11

アーキテクチャが似ていると仮定して、異なる Linux マシンで実行するスタンドアロンの haskell 実行可能ファイルを生成する方法はありますか?

申し訳ありませんが、私はより明確であるべきでした。他のマシンには ghc がインストールされていない可能性があります - python の pyinstaller のようなものが私が探していたものですか?

4

2 に答える 2

12

-static -optl-pthread -optl-staticHaskell プロジェクトをコンパイルするときに、フラグを使用して、動的にリンクされた依存関係を回避できます。これは、まったく同じライブラリ バージョンを持たない 2 つの Linux マシンでコンパイル済みの実行可能ファイルを実行するのに役立ちます。

于 2013-04-22T15:10:05.893 に答える
5

はい、可能です。gcc で生成されたバイナリと同様に、動的ライブラリとプラットフォームが一致していれば、システム間でコピーできます。

実際には、GHC はデフォルトでより多くのライブラリを動的にリンクするため、これは GCC バイナリよりもわずかに高いバーです (例: integer-simple を使用して GHC をビルドしない限り、libgmp)。

于 2013-04-22T15:00:52.703 に答える