Boostは、ライブラリをリンクする3つの方法を提供しています.1つのヘッダ、スタティックライブラリ、共有ライブラリです。どれが好ましいデフォルトですか? 1つのアプローチを他のものよりも使用することの長所/短所は何ですか?スタンドアローンライブラリのコンパイルステップを避けることができるので、私はシングルヘッダーの変形を好むようです。そして、私は一度にすべての機能をすべて必要としません。私はBoostのユニットテストフレームワークの使用を計画しています。ほとんどのセットアップ/スタートアップのドキュメントでは、シングルヘッダーを使用するための迅速で汚れた方法が常に言及されています。このリンクhttp://www.boost.org/doc/libs/1_60_0/more/getting_started/windows.htmlは、 "ヘッダーのみ"または "個別にコンパイル"モードで使用できますが、別のコンパイルを使用することをお勧めします。私は真剣に使用するためにはコンパイルが必要なのか、実際にコンパイルする必要があるのだろうか?コンパイルを必要とシングルヘッダ、スタティックライブラリ、共有ライブラリの間でブーストライブラリをリンクする方が良いですか?
0
A
答えて
2
いくつかのBoostライブラリは、プロジェクトで使用すると、いくつかのBoostライブラリはそれらに隣接する特定の機能のためのコンパイルが必要です。したがって、あなたがそれらを必要とするライブラリ/機能のいずれかを使用する予定の場合は、にはが必要です。
静的ライブラリと共有ライブラリのどちらを選択するかは、主に個人の好みに応じて異なります。一般にBoostを使用すると、BoostのABI互換の新しいバージョンを取得し、そのコードを自分のコードに変更せずにパッケージ化するシナリオは予期しません。ですから、私は静的ライブラリとして、常にBoost(またはより正確には、コンパイルが必要なboostの部分)を使用しています。
関連する問題
- 1. 共有ライブラリとスタティックライブラリのリンク
- 2. スタティックライブラリを共有ライブラリにリンクする
- 3. スタティックライブラリで共有ライブラリを構築する
- 4. 別のスタティックライブラリを共有するスタティックライブラリをリンクする
- 5. 共有ライブラリをスタティックライブラリに変換する
- 6. スタティックライブラリと共有C++ライブラリの両方を作成する
- 7. スタティックライブラリと共有ライブラリの混在
- 8. 共有ライブラリをスタティックライブラリにリンクする:アプリケーションがリンクしていた場合とは異なるスタティックライブラリをコンパイルする必要がありますか?
- 9. スタティックライブラリで共有ライブラリを構築できません
- 10. Cmake:リンク共有ライブラリ
- 11. ライブラリ間でFILEポインタを共有する
- 12. 共有ライブラリとCMakeを相対パスでリンクする方法
- 13. クラス間でオブジェクトを共有する良い方法は何ですか?
- 14. 共有ライブラリをg ++とリンクする
- 15. CMakeと共有ライブラリをリンクする
- 16. スタティックライブラリの一部を共有する
- 17. いくつかのアプリケーション間で画像を共有する最良の方法
- 18. Makefileリンク共有(ダイナミック)ライブラリ
- 19. VS2010でプロジェクト間でDLLライブラリを共有
- 20. 静的ライブラリをテストするか、プロジェクト間で共有する
- 21. ASP.NET:Webアプリケーション間でリソース(メンバーシップ、ライブラリ)を共有する方法
- 22. 共有ライブラリ(旧スタンダード)をC++ 11共有ライブラリでコンパイルする
- 23. Linux上の共有ライブラリに関する良いプラクティスは何ですか?
- 24. Linux上のCMakeで共有ライブラリにブーストをリンクする
- 25. ビルド中に静的ライブラリを共有ライブラリにリンクしますか?
- 26. iPhoneでユーザー間で情報を共有する最も良い方法は?
- 27. cmakeを使用してjemalloc共有ライブラリをリンクする方法
- 28. ブーストライブラリをリンクする
- 29. cppをコンパイルして共有ライブラリにリンクする方法
- 30. Linux上でgccと共有ライブラリをリンクする