3

つまり、 Boost.Process 2006Boost.Process 2008、そして最新のBoost.Processは、ソースを見ると2009年のように見えます)その獣をコンパイルする方法について、ある種の段階的なガイダンスが必要です。私は間違いなくそのようなことをする方法を理解していないからです。

だから一般的な公式ブーストのために私は何がなされるべきかを理解しています

管理者権限なし:

  • 最新のBoostリリースをダウンロードします。
  • 解凍し、ダウンロードしたコンテンツをいくつかのフォルダに抽出します。
  • ターミナルでそのフォルダを開きます(たとえば、OS(Mac、Linux)やWindowsなどのUnixcd absolute/path/to/directory/with/extracted/Boostでフォルダの内容を表示するには、useコマンドのようなuseコマンドを「cmd」または「terminal」で開きます-出力で見つけることができるはずです)。lsdirboost-build.jam
  • mkdir ( foldernameのようなコマンドを使用して) 2つのフォルダーを作成しbuild-dirinstall-dir
  • コマンドの実行./booststrapbooststrap.shまたはbooststrap.batWindowsの場合)
  • これで、Boostをコンパイルしてインストールできます./bjam -j4 link=static threading=single,multi --builddir=./build-dir install --without-mpi --prefix=./install-dir
    • このような呼び出しは、Boostの静的ライブラリをにコンパイルしますbuild-dir。(おそらくそこからBoostを使用することはできません-インクルードヘッダーと非常に大きなディレクトリ階層はありません)
    • bjamがBoostの「インストール」を作成するよりinstall-dir、すべてのBoostライブラリ(静的バージョン)を含むフォルダーが表示され、すべてのBoostヘッダーを含むフォルダーが含まれます。
    • 4コアでコンパイルするように-j4フラグを設定しました。-jを使用します。Nここで、Nはコンパイルプロセス中に使用される必要なコアの数です。
    • --without-mpiおそらく使用しないのでフラグを設定します。

しかし、Real Boostを解凍し、コンパイルして、ディレクトリAにインストールします(bjamはフォルダーBにあります)Boost.Processをダウンロードし、解凍してフォルダーCに抽出し、その3つのBoost.Processリリースのいずれかをコンパイルする方法(管理者権限なし)?

4

1 に答える 1

1

私はこれを1、2回行いましたが、覚えていることは次のとおりです。

サンドボックスなどからブーストライブラリをダウンロードした後、たとえばフォルダCに言ったように、ドライブにライブラリを解凍します。Cフォルダを開くと、通常、ブーストソースの他の部分と同じフォルダ構造になります。少なくとも、これは私が試した限られたライブラリの場合でした。

そこから、抽出されたソースフォルダー内の個々のファイルとフォルダーをブーストソース内の対応するフォルダーにコピーします。

たとえば、プロセスの場合-C / boost/process.hppとC/boost /process/をboost_src_dir/boost/にコピーします-C/libs /process/をboost_src_dir/libs/にコピーします。

そこから、ブーストルートでbjamを再度実行し(bjam実行可能ファイルがパス上にあると想定)、私の場合は、新しいライブラリを含むすべてをビルドします。ブーストログとプロセスでこれを行ったことを覚えており、他に何もする必要があるとは考えられません。

これを行うことの欠点は、すべてが再コンパイルされることです。おそらく他の誰かがこれを行うためのより良い方法を持っています。

管理者権限については、元のバージョンを作成したのと同じ方法でブーストを作成しているので、それらは重要ではありません。

于 2011-04-20T16:30:49.327 に答える