問題タブ [bjam]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - bcp を使用してビルド可能な Boost 抽出物を取得する
Boost.Archive を Boost から抽出するために bcp を使用しています。残念ながら、この抽出物をビルドすることはできません。Boost.Archive はヘッダーのみのライブラリではありません。
バジャムは文句を言う
bjam で抽出をビルド可能にするように bcp に指示する方法はありますか (boost-build.jam を適切な場所にコピーします)。
boost - cxxflags = -O2を使用するようにブーストリリースバリアントを変更するにはどうすればよいですか?
私のマシンでは、variant=releaseのcxxflagsはデフォルトで-O3です。
-O2に変更する必要があります。進め方を教えてください。
誰かが私にそれについてアドバイスすることができれば、私は新しいバリアントを定義することにも問題はありません。
boost-build - ライブラリのデバッグ バリアントとリリース バリアントを同じコマンドでインストールすることは可能ですか?
次の Jamfile を使用しています (ディレクトリ /home/morpheus/base/CDef 内):
lib CDef : [グロブ *.cpp] : static ;
install libCDef : CDef : LIB "/home/morpheus/base_install/lib" : release ;
install _libCDef_D : CDef : LIB "/home/morpheus/base_install/libdebug" : debug ;
2 つのインストール行をデバッグ ディレクティブとリリース ディレクティブの両方を持つ行に変更できるかどうか疑問に思っていました。
また、別のディレクトリ ( /home/morpheus/FSLR ) の別の Jamfile でライブラリを使用するために、次の Jamfile を使用して exe callFSLR をビルドしています。
lib CDef : : CDef を解放 /home/morpheus/base_install/lib ; lib CDef :: debug CDef /home/morpheus/base_install/libdebug ;
exe callFSLR : call_FSLR.cpp CDef:: デバッグ リリース;
install install-bin をインストールします: callFSLR : "/home/morpheus/base_install/bin" release ;
Jamfile /home/morpheus/base/CDef/Jamfile 内の CDef を参照するために「use-project」を使用することは、おそらく推奨できると思いますか?
xcode - `bjam --toolset =`とAppleコンパイラのタグ値?
を使用してBoostバイナリライブラリを構築する場合、オプションに特定の値を使用することにより、特定のコンパイラバージョンを指定せずbjam
に、使用するコンパイラを指定できます。例えば:--toolset=
bjam --with-serialization --toolset=msvc
ツールセットの値 msvc
は、bjam
システムでMicrosoft Visual C ++のバージョンを検索し、それを使用してBoost.Serializationライブラリのさまざまなバリアントを構築するように指示します。結果のライブラリには、実際に使用されたツールセットを示すタグが含まれます。たとえば、上記のコマンドは次のようなファイルを作成します。
ここvc100
で、ファイル名の文字列は、 Microsoft Visual C ++ 2010コンパイラバージョンが見つかり、ライブラリの構築に使用されたことを示すツールセットタグです。[Boostライブラリファイルの命名規則の詳細については、こちらをご覧ください。]
オプションに他の特定の値を使用して、コンパイラの特定のバージョンを指定することも--toolset=
できます。例えば:
bjam --with-serialization --toolset=msvc-9.0
bjam
システムに複数のコンパイラがある場合でも、特にMicrosoft Visual C++2008を使用する必要があることを示しています。結果のライブラリには、 Microsoft Visual C++2008を使用してライブラリを構築したvc90
ことを示すタグ文字列が含まれています。
Boostのドキュメントは、Macの新しいコンパイラに関しては少し古くなっているようです(たとえば、GCC、LLVM-GCC、LLVMをどのように区別しますか?)
私の質問は、 Mac上のXcode3およびXcode4の特定のコンパイラバージョン(のような一般的なコンパイラ名の値ではないbjam --toolset=
)の他の値とそれに対応するタグのいくつかは何ですか?これらはどこかに文書化されていますか?一部のバージョンでBoostライブラリを構築することが、Boostでまだサポートされていない場合でも、およびタグの値はまだ指定されていますか?darwin
toolset
???
この表のを置き換えるのを手伝ってください:
(1)Appleは、Apple固有の拡張機能と動作を追加するために、独自のバージョンのGCCおよびLLVMコンパイラを作成しています。
(2)Xcode3でのみ使用できます。
(3)Xcode4でのみ使用できます。
c++ - BJAM 、vc7.1 の代わりに vc-80 用にビルド
bjam for vc80 を使用してブースト ライブラリ date_time を構築するにはどうすればよいですか。
現在私は ..\bjam.exe release debug threaded=multi --toolset=msvc-8.0 stage --with-date_time --build-type=complete --deb ug-configuration -d+2 を使用しています
これはライブラリのみを生成しますvc7.1 バージョンでは、必要なのは vc80 です。
また、v2 の代わりに v1 バージョンの Boost.Build セットアップが使用されていることにも気付きました。そのため、user_config.jam は使用されていませんでした。
makefile - bjam の代わりに make で boost.python を使用する
すべてのbjamマジックを使用せずに、boost.pythonの「hello world」の例をコンパイルしようとしています。私のboost.pythonインストールは機能しています.bjamでサンプルをうまくビルドし、テストスイートに合格しました.
今私のプロジェクトでは、プレーンな Make 環境でこれらすべてのものを使用する必要があります。別のビルド ツールに移植したくありません。
したがって、私の素朴なアプローチは、もちろん、インクルード パスを正しいヘッダーに向け、正しいライブラリにリンクすることです。私はブースト python を system-layout、static、runtime-static としてビルドしました。つまり、/usr/local/lib にある libboost_python.a にすぎません。
残念ながら、結果の .so ライブラリに未解決の外部シンボルが含まれています。
これは、libs/python/example/tutorial/hello.cpp から例をビルドしようとする私の試みです:
では、bjam が libboost_python.a をリンクすると、未定義のシンボルが取得されないという bjam の大きな魔法は何ですか?
c++ - BoostC++ライブラリのコンパイルと使用を支援する
Boostのシリアル化ライブラリを使用したいC++プロジェクトに取り組んでいます。Boostのホームページから最新のBoostライブラリをダウンロードしてインストールしました。
Boostのデモシリアル化の例の1つをコンパイルして実行しようとすると、次のようなあらゆる種類のエラーが発生しました。
私はC++とブーストに不慣れなので、助けていただければ幸いです。
ありがとう
windows - Boost 1.44 --builddirと--includedirがWindowsで機能しませんか?
Boost1.44をデフォルトではなく特定のディレクトリにビルドしようとしています。ブーストルートディレクトリから次の手順を実行して、Linuxマシンで同じことを行います。
./bootstrap.sh bjam --prefix = .. / .. / DIR
これにより、ライブラリが../../DIR/libにビルドされ、ヘッダーが../../DIR/includeにビルドされます。
私は自分のWindowsマシンで同じことをしようとしているので、次のことを試しました。
./bootstrap bjam--prefix = ../../ DIR
しかし、それはそれをブーストルートビルドエリアに直接構築しました。bjam --builddir = .. / .. / DIR / lib --includedir = .. / .. / DIR/includeも試しました
しかし、これはどれもうまくいかないようです。私が間違っていることについて何か考えはありますか?
boost - bjamで「install--backup」を指定する方法
次のコマンドを含むJamfileがあります。bjamはunixinstall
コマンドを使用してインストールすると思います。install --backup
それを特定のコマンドに、または特定のコマンドに変更したいと思いinstall -b
ます。
お知らせ下さい。
c++ - MinGW を使用して Boost 1.45 をビルドする
MinGW を使用して、Windows XP で Boost 1.45 をコンパイルしてみてください。1年前にやりましたが、繰り返す方法をほとんど忘れていました。
%PATH% には MinGW パスが含まれます。
user-config.jam には、ここusing gcc ;
から bjam (ntx86 のもの) が含まれています。
出力: