PATHS
オプションを提供するfind_path
コールがあります。 CMake 2.8.12では、提供されたパスを返しますが、CMake 3.7.2では${CMAKE_SOURCE_DIR}
(または、そのディレクトリにあるその他のCMakeコンテンツ)を返します。CMakeのfind_path動作の変更CMake 2.8.12と3.7.2の間の変更
find_path
(サードパーティ)スニペットは、次のようになります。
set(ZLIB_SEARCH_PATH "${PATH_ETC}/src")
set(ZLIB_SRC_DIR_NAME "zlib")
set(ZLIB_PATH_INIT "${ZLIB_SEARCH_PATH}/${ZLIB_SRC_DIR_NAME}")
find_path(ZLIB_PATH
NAMES CMakeLists.txt
PATHS "${ZLIB_PATH_INIT}"
DOC "Location of zLib source")
Changed find_library behavior from CMake 2.8 to CMake 3.2は、私は、サードパーティ製を含むてるとして、それは私には解決策ではありませんNO_DEFAULT_PATH
オプションを追加する作業のヒントを提供していますがソフトウェアと私は変更の根本的な原因を理解したいと思います。未設定の以下の変数のすべてが空である
注/:
- CMAKE_LIBRARY_ARCHITECTURE
- CMAKE_PREFIX_PATH
- CMAKE_INCLUDE_PATH
- CMAKE_FRAMEWORK_PATH
- CMAKE_FIND_ROOT_PATH。
動作の変更は何ですか? find_path
コールを「デバッグする」方法はありますか?
ショー正確 'find_path'コールを。あるいは、より良い、[mcve]ので、さまざまな変数の内容について推測する必要はありません。 – Tsyvarev