我有一个使用CMake的FindCurses.cmake项目。我在OS上,操作系统附带了一个较旧版本的ncurses (并且似乎不包括C++绑定),而我试图构建的代码需要ncurse5.9。我使用了自制软件安装5.9,但就像一个好邻居一样,它不会覆盖操作系统附带的诅咒/ncurses资源(我也不希望它)。
我的直觉是,在不编辑CMake文件的情况下,这是我应该做的事情,对吗?(因为这种行为变化是特定于我的构建环境的,而不是对项目本身的更改,对吗?)在使用autoconf项目时,我可能会在运行CFLAGS之前添加LDFLAGS和LDFLAGS环境变量,但是CMake似乎还有很多事情要做。
在CMake中做这件事的惯用方法是什么?
发布于 2015-06-23 14:41:44
您可以通过CMAKE_PREFIX_PATH提供其他搜索路径。首先搜索CMAKE_PREFIX_PATH中的路径。
您可以在CMAKE_PREFIX_PATH文件中指定硬编码的CMakeLists.txt,或者最好通过:
cmake -D CMAKE_PREFIX_PATH=/path/where/brew/installed/curses .发布于 2015-06-23 14:44:37
您可以添加指向ncurses版本的CMakeLists.txt include_directories和link_directories。
另外,我也会试图找出ncures5.9是否有一个pkg-config模块。请看pkg-config --list-all。
https://stackoverflow.com/questions/31005511
复制相似问题