编译LMGC90时CMake报PYTHON_LIBRARY未找到错误的解决求助
报错解决方案
该报错产生的原因是CMake成功识别到Python 3.8的可执行文件与头文件,但未找到对应版本的Python动态链接库,通常由未安装Python开发组件,或CMake未自动检索到库文件路径导致。
步骤1:安装Python开发依赖
根据你使用的操作系统执行对应安装命令:
- Debian/Ubuntu 系列:
sudo apt install python3.8-dev - CentOS/RHEL 系列:
sudo dnf install python38-devel
安装完成后,进入build目录清理旧的CMake缓存,再重新执行编译配置:
cd ~/lmgc90_user_2021.rc1/build rm -rf CMakeCache.txt CMakeFiles/ cmake .. -DPYTHON_EXECUTABLE=/usr/bin/python3
如果配置无报错即可继续后续编译流程,仍报错则执行步骤2。
步骤2:手动指定Python库路径
先检索本机Python 3.8动态库的实际路径:find /usr -name "libpython3.8.so" 2>/dev/null
命令返回结果示例:/usr/lib/x86_64-linux-gnu/libpython3.8.so
将查询到的路径代入CMake命令重新执行配置:
cmake .. \ -DPYTHON_EXECUTABLE=/usr/bin/python3 \ -DPYTHON_LIBRARY=你查询到的libpython3.8.so完整路径 \ -DPYTHON_INCLUDE_DIR=/usr/include/python3.8
额外注意事项
- 需保证指定的Python可执行文件、库文件、头文件版本完全一致,避免后续出现链接错误
- 日志中提示Cython未找到会禁用rTree Python绑定,若需要该功能可提前安装Cython:
sudo apt install cython3或pip3 install cython
内容的提问来源于stack exchange,提问作者Tan Phan
相关产品推荐
相关产品推荐

