1

Ogre 3d エンジン (thread および date_time) に必要な動的ブースト ライブラリを構築しました。私のブーストディレクトリは C:\boost にあり、ライブラリは C:\boost\lib にあり、標準で必要な C:\boost(\boost) に含まれています。

CMake と Ogre に精通している場合 (ソースから Ogre リポジトリのクローンを作成する最も簡単な方法であるため)、他に指定することはあまりないことをご存知でしょう。私の場合はそうではありません.Cmakeは常にブーストが見つからないと報告します。これは、リポジトリから Ogre 1.8 バージョンをビルドしようとしたときにのみ発生します。Ogre 2.0 の実験的な不安定版 (この質問を書いた時点) を使用すると、boost が正常に検出され、そのスレッドおよび日時コンポーネントも検出されます。

誰かアイデアはありますか?できれば、この方法で Ogre 1.8 ソースをビルドしようとした人はいますか?

私はほとんどすべてを試しましたが(コマンドラインのcmakeも)、良い結果は得られませんでした。

私はこの質問を Ogre フォーラムでほぼ 2 回行いましたが、それらの情報源からは Ogre の安定版リリースの問題を解決するものは何もありませんでした。

あるバージョンを別のバージョンにビルドするときに、Cmake がこれほど脱線するのはなぜですか? 少なくとも CMake でブーストの存在を確認するにはどうすればよいですか (ビルド ソリューションなどを作成せずに)。

簡単なコマンド ライン フラグまたは cmake で実行する簡単なスクリプトが必要ですが、FindBoost.cmakeファイルを除けば、実際には何も役に立ちません (そして、ファイルが大きすぎて、すぐに何かを作成することはできません)。

更新sakraの提案 を使用すると、ブーストが認識されることがわかります。

-- [ C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:6
7 ] location of version.hpp: C:/boost/boost/version.hpp
-- [ C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:7
6 ] version.hpp reveals boost 1.50.0

ただし、このセクションではブーストがあるべき場所であることを明らかにしていますが、thread および date_time ライブラリは CMake からは見えません。

Boost_USE_STATIC_LIBS念のため、フラグは OFF/FALSE に設定されています。

--find-package cmake コマンド ライン引数を使用して更新します。

C:\Ogre18\Build>cmake --find-package -DNAME=Boost -DCOMPILER_ID=GNU -DLANGUAGE=C
XX -DMODE=EXIST
Boost found.

最終的に、cmake は必要なコンポーネントを見つけられません。ブースト インストールに属する特定のライブラリを確認できますか?

4

1 に答える 1

1

cmake変数Boost_DEBUGを に設定して呼び出してみてくださいTRUE。これにより、FindBoost モジュールが Boost インストールを見つけられない理由についてのヒントが得られる場合があります。

cmake -DBoost_DEBUG=TRUE .
于 2012-07-27T13:06:39.490 に答える