我有一个CMake项目,其中我使用库,现在我想使用该库的不同版本来测试我的代码。我可以在下面的示例中设置INCLUDE_DIRECTORIES (可能稍后还会设置链接)。但是因为我只想暂时这样做,所以我想用ccmake/cmake-gui手动设置此路径。
我该怎么做呢?
project(min_example)
cmake_minimum_required(VERSION 2.8)
find_package(OpenCV REQUIRED)
# Without the following line please:
INCLUDE_DIRECTORIES("/home/me/src/opencv/install/include")
add_executable(min_example main.cpp)
target_link_libraries(min_example ${OpenCV_LIBS})发布于 2011-08-12 02:42:23
这应该可以通过在配置构建时设置CMAKE_PREFIX_PATH变量来实现。在您的项目目录中,生成一个test_build目录并运行:
mkdir test_build
cd test_build
cmake -DCMAKE_PREFIX_PATH=/home/me/src/opencv/install ..设置CMAKE_PREFIX_PATH变量将使find_package(OpenCV REQUIRED)命令选择/home/me/src/opencv中的OpenCV安装,并相应地设置OpenCV_LIBS和OpenCV_INCLUDE_DIR变量。
或者,您可以使用CMake图形用户界面编辑器编辑现有构建目录的CMakeCache.txt文件,并在其中添加CMAKE_PREFIX_PATH定义。然后,您必须重新配置您的项目。
发布于 2018-09-07 11:40:51
在find_package中使用config会将搜索路径限制为OpenCV_DIR。这将使用opencv在构建时生成的cmake配置来设置要包含的路径和库
set(OpenCV_DIR "<cusompath>" CACHE PATH '' ${SHOULD_FORCE_CACHE})
find_package(OpenCV REQUIRED CONFIG)https://stackoverflow.com/questions/7029371
复制相似问题