如何强制CMake优先搜索指定目录下的*.cmake配置文件
问题原因
你之前配置的CMAKE_LIBRARY_PATH是CMake用于搜索二进制库文件(.so/.a/.dll)的路径,不负责搜索.cmake配置类文件,因此无法生效。
解决方案
按优先级从高到低选择以下任意一种方法即可:
- 方法1:指定CMake全局搜索前缀(最推荐)
CMAKE_PREFIX_PATH是CMake查找所有安装包的优先前缀路径,你的FFTW3安装在$HOME/.local下,直接在运行安装命令前执行:export CMAKE_PREFIX_PATH=$HOME/.local:$CMAKE_PREFIX_PATH python setup.py install --user - 方法2:直接指定FFTW3的CMake配置路径
针对FFTW3包单独指定其cmake配置文件所在路径,优先级高于全局前缀配置:export FFTW3_DIR=$HOME/.local/lib/cmake/fftw3 python setup.py install --user - 方法3:永久生效配置
如果需要长期生效,将以下任意一行写入你的shell配置文件(~/.bashrc/~/.zshrc等):
写入后执行# 二选一即可 export CMAKE_PREFIX_PATH=$HOME/.local:$CMAKE_PREFIX_PATH export FFTW3_DIR=$HOME/.local/lib/cmake/fftw3source ~/.bashrc(对应你实际使用的shell配置文件),后续运行安装命令无需再重复设置环境变量。
内容的提问来源于stack exchange,提问作者f10w
相关产品推荐
相关产品推荐

