問題タブ [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.

0 投票する
4 に答える
5999 参照

c++ - MSVC 用にビルド済みの Boost 1.37

Boost 1.37.0 用のビルド済みの MSVC++ ライブラリ セットが見つかりません。ソースのみです。彼らの奇妙なビルドシステムがどのように機能するのか理解できません...ビジュアルスタジオプロジェクトなどのダウンロードを見つけることができる場所はありますか?

0 投票する
3 に答える
514 参照

c++ - ブーストをコンパイルするときに BOOST_DISABLE_ABI_HEADERS を定義すると、どのような害が生じる可能性がありますか?

ブーストをコンパイルするときに BOOST_DISABLE_ABI_HEADERS を定義すると、どのような害が生じる可能性がありますか?

ブースト ファイルから: boost_1_37_0\boost\config\user.hpp

なぜブーストは構造体のパッキングとアラインメントを制御する必要があると感じるのですか?

シリアライゼーションを強化し、すべてのプラットフォームで同じように動作するようにする必要があるのでしょうか? Windows のみを実行している場合、これを安全に定義できますか?

0 投票する
2 に答える
4996 参照

c++ - Windows でブーストのサブセットを構築する

ブーストのサブセットをセットアップし、bjam を使用して適切にコンパイルしようとしていますが、探している結果が得られません。ブースト 1.37.0 を使用して Windows で作業しています。

ライブラリ smart_ptr とファイルシステムをビルド/インストールしたいとしましょう。私は意図的にヘッダーのみのライブラリと、ライブラリをコンパイルする必要がある 1 つのライブラリを選択しました。bjam を使用して完全なブースト インストールを構築した場合 (つまり、--with-libraryX を指定しない場合) に似たディレクトリ構造にそれらを構築したいのですが、もちろん、興味のないすべてのライブラリは含まれていません。 .

私の最初のアプローチは、bjam で --with-filesystem --with-smart_ptr を使用することでしたが、smart_ptr を認識しなかったようです (smartptr と smart-ptr を試してみましたが成功しませんでした)。これは、ヘッダーのみのライブラリであるためだと思います。

私がそれを削除し、 --with-filesystem だけを持っていたとき、すべてのライブラリヘッダーファイルをインストールパスにコピーし、ファイルシステムのライブラリのみを構築するように見えました。ライブラリのビルド動作は私が望んでいたものでしたが、boost ディレクトリにインストールすることに興味のないライブラリのヘッダー ファイルが大量にありました。

私の 2 番目のアプローチは、bcp を使用して関連するプロジェクトをコピーすることでした。これは、私が関心のあるプロジェクト (およびその依存関係) のみを取得したという意味でうまくいきました。ただし、コピーされたライブラリを構築するためのメイク ファイルは提供されませんでした。これは、ヘッダーのみではないすべてのライブラリのプロジェクト ファイルをセットアップし、それらを手動でビルドする必要があることを意味します。

だから私の質問は基本的に、私が興味を持っているライブラリのヘッダーのみをコピーし、私が興味を持っている非ヘッダーのみのライブラリのライブラリファイルのみを構築するブーストを選択的に構築する方法はありますか?コースによる)?

これにはおそらく手動/スクリプトベースのソリューションがたくさんありますが、新しいライブラリを追加したり、新しいブーストバージョンにアップグレードしたりするのは非常に簡単なので、bjam のみを使用して何かを実行することができれば、私にとってははるかに便利です。

編集:最初のアプローチの完全なコマンドラインを追加しました:

scoped_ptr を smart_ptr に変更

0 投票する
2 に答える
555 参照

build - bjam でスペースを含むファイル名を操作するにはどうすればよいですか?

Jamfile に外部ライブラリを記述する必要があります。ライブラリの場所は環境変数に保持されます。

Jamfile のスニペットは次のとおりです。

- をちょきちょきと切る -

- スピン -

「C:\Program」が見つからないという bjam の鳴き声。Jamfile で lib ルール呼び出しを取得して、スペースが埋め込まれたパスを受け入れるにはどうすればよいですか?

0 投票する
4 に答える
29638 参照

c++ - 静的リンク用のビルド ブースト (MinGW)

bjam を使用して MinGW 用の Boost (私は System と FileSystem を使用しています) を構築しています:

そして、それはうまく構築されますが、静的にリンクできるようにしたいので(最終製品用に単一のファイルが必要です)、試しました:

しかし、同じ出力が得られます。何か案は?

2 番目の質問を続けて編集投稿した直後に回答しました :p 他の人のためにここに残しておくと思います。

確かに動的と静的の両方を構築します。

0 投票する
4 に答える
8762 参照

migration - Boost Jamとは何ですか?Jamは移行する価値がありますか?

Boost Jamとは何ですか?Jamは移行する価値がありますか?

ジャムはPERFORCEによって構築されたビルドシステムであることは理解していますが、ブーストジャムと通常のジャムがどのように異なるのかわかりません。

また、SOコミュニティに協力してくれた人がいて、いくつかの違いや利点を強調できる人がいることを願っています。

0 投票する
1 に答える
301 参照

makefile - Boost::Jam (bjam) には「質問モード」がありますか?

Boost::Jam で Code::Blocks を使用しています。C::B への最近の更新により、いくつかの新しい「カスタム makefile」コマンドが追加されました。そのうちの 1 つは「再構築が必要かどうかを尋ねる」です。このメッセージによるとmake、「質問モード」で呼び出すことを意図しています。

-q, --question
''質問モード''。コマンドを実行したり、何も出力したりしないでください。指定されたターゲットがすでに最新の場合はゼロ、それ以外の場合はゼロ以外の終了ステータスを返すだけです。

残念なことに、Boost::Jam のドキュメントでは、そのようなモードについて言及していませんbjam。このコマンドを使用して回避しました...

...これbjamにより、 errorlevel 1 が強制的に返され ( option が認識されないため-e)、C::B が常にビルド コマンドを実行するようになりますが、意図したとおりに使用することをお勧めします。

私の質問:そのようbjamな「質問モード」がありますが、私はそれを見つけられませんでしたか、または Jamfile にそのように機能させる方法がありますか? この-nオプションは、C::B が「最新のすべてのファイル」と解釈するゼロを常に返すため、機能しません。

0 投票する
2 に答える
6646 参照

boost-build - bjam を使用した基本的な Boost アプリケーションの構築

Boost.Build に関する汎用ドキュメントは山ほどありますが、驚くべきことに、これを使用して単純な Boost アプリケーションを構築する方法については何も書かれていません。

bjam を使用して mingw の Boost をコンパイルし、すべてのライブラリを取得して C:\Boost にインクルードしました。これらすべてを使用すると、基本的な Jamroot ファイルはどのようになるでしょうか?

ライブラリにはすべて「libboost_filesystem-mgw34-mt-s.lib」のような複雑な名前が付けられています。「libboost_filesystem に対してリンクする」というだけの魔法のスイッチがどこかにあるはずです。

0 投票する
3 に答える
8771 参照

comparison - Boost bjam 対 GNU make

Boost C++ ライブラリの初心者です。GNU make よりも Boost bjam に利点があるかどうか疑問に思っていましたか? また、Boost.Python ライブラリを使用して C++ コードをビルドするために make を使用する場合の短所は何ですか?

0 投票する
2 に答える
3790 参照

macos - bjam が使用する GCC のバージョンを変更する

bjam でライブラリ (luabind) を構築しようとしています。エラーが発生しました。問題は gcc 4.2 でコンパイルする必要があるようですが、このコンピューター (Mac OSX) のデフォルトは 4.0 です。システムディレクトリのリンクを変更するのは避けたいのですが、gcc だけでなく gcc4.2 を使用するように bjam に指定する方法はありますか?