4

自分のマシンに CSWNet というライブラリを構築したいと考えています。Cmake は Boost_INCLUDE_DIR と Boost_LIB_DIR を見つけることができますが、Boost の CMake 構成ファイルを含むディレクトリである Boost_DIR というオプションを見つけることができません。それはどこにある?助けてください、よろしくお願いします。私が得たエラーは以下のとおりで、ubuntu リポジトリからブーストをインストールし、/usr/local にインストールされています。

 CMake Error at /usr/local/share/cmake-2.8/Modules/FindBoost.cmake:429 (message):
When requesting a specific version of Boost, you must provide at least the
major and minor version numbers, e.g., 1.34
Call Stack (most recent call first):
demos/CMakeLists.txt:149 (find_package)
4

2 に答える 2

10

の意味を誤解しているようですBoost_DIR

Boost_DIRCMake がブースト インストール ディレクトリを見つけるためのヒントとして使用する環境変数です。これが設定されBoost_DIR-NOTFOUNDていても、Boost が見つからなかったという意味ではありませんBoost_FOUND検索が成功したかどうかを示すために使用されます。

find_package(Boost REQUIRED thread)
if(Boost_FOUND)
    message(STATUS "Success!")
endif()

検索が成功した場合、CMake は構成フェーズ中に次のような診断メッセージも出力します。

Boost version: 1.53.0
Found the following Boost libraries:
  thread
于 2013-07-10T10:48:35.107 に答える
3

これを投稿するのに遅すぎないことを願っています。コマンドラインで cmake コマンドと一緒に渡すと解決します

 cmake -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=dist -DBOOST_DIR="boost installation location"
于 2016-10-28T01:02:08.807 に答える