次のCMakeLists.txtファイルがあります。
cmake_minimum_required (VERSION 3.2 FATAL_ERROR)
project (utils VERSION 1.0.0 LANGUAGES CXX)
ExternalProject_Add(json-c
GIT_REPOSITORY "https://github.com/json-c/json-c.git"
UPDATE_COMMAND git pull "https://github.com/json-c/json-c.git"
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/SDL_image/./configure
--prefix=${SDL_INSTALL_DIR}
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/json-c
INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}
)
Json-cライブラリをプロジェクトに追加したいのですが、cmakeを実行するとエラーが発生します:Unknown CMakeコマンド "ExternalProject_Add"。私のCMakeバージョンはOS Xで3.6.2です
必要なモジュールはcmakeインストールの一部である必要があります。ただし、次のようにしてプロジェクトに含める必要があります。
_include(${CMAKE_ROOT}/Modules/ExternalProject.cmake)
_
externalproject_add(YOUR STUFF HERE)
の呼び出し前
説明:
CMAKE_ROOTは、使用中のcmakeインストールを指します。すべてのモジュールはサブフォルダーModules内にあります。
message(STATUS "CMAKE_ROOT=${CMAKE_ROOT}")
を使用して現在の値を出力できます。または、そのためにスマートマクロを使用しています。 CMake を参照してください
ドキュメントページに直接記述されていませんが、 cmake-modules セクションで説明されているCMake関数には、特定のモジュールを含むが必要です。
関数ExternalProject_Add
は ドキュメントページ で説明されている「ExternalProject」というタイトルなので、使用する必要があります
include(ExternalProject)
それを使用する前に。
Find<name>
モジュールを除く他のモジュールでも同じ戦略が機能します。これらのモジュールは経由で使用されます
find_package(<name>)