You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CMake指定gcc-8编译AmberTools仍默认用gcc-5报错求助

解决Ubuntu 16.04编译AmberTools时CMake强制使用默认gcc5的问题

问题背景

在Ubuntu 16.04.7 LTS上编译AmberTools 22,系统默认gcc/g版本为5.4.0,但AmberTools要求最低gcc-6。已安装gcc-8和g-8,通过CMAKE_C_COMPILER和CMAKE_CXX_COMPILER指定路径执行CMake命令:

cmake $AMBER_PREFIX/amber22_src \
-DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/amber22 \
-DCOMPILER=GNU \
-DMPI=FALSE -DCUDA=TRUE -DINSTALL_TESTS=TRUE \
-DDOWNLOAD_MINICONDA=TRUE \
-DCMAKE_C_COMPILER=/usr/bin/gcc-8 -DCMAKE_CXX_COMPILER=/usr/bin/g++-8 \

但CMake仍识别到C/C++/Fortran编译器为GNU 5.4.0,并抛出错误:

Error: Amber requires at least g++-6.0

从错误日志可见,CMake实际调用的是系统默认的/usr/bin/gcc、/usr/bin/g++和/usr/bin/gfortran,而非指定的gcc-8版本。

问题根源

  1. CMake缓存残留:之前执行过的CMake配置会在build目录生成缓存文件,保存了默认编译器路径,导致新指定的参数未生效,日志中也明确提示"You have changed variables that require your cache to be deleted"。
  2. Fortran编译器未指定:仅指定了C/C编译器,但AmberTools依赖Fortran编译,系统默认gfortran仍为5.4.0,CMake会自动关联使用同版本的C/C编译器。
  3. COMPILER=GNU参数冲突:该参数会强制CMake调用系统默认的GNU编译器套件,覆盖手动指定的编译器路径。

解决方案

1. 清理CMake缓存

彻底删除原build目录,重建干净的编译环境:

rm -rf /media/gpu-1/GPU_1_2TB/Ambertools22/amber22_src/build
mkdir -p /media/gpu-1/GPU_1_2TB/Ambertools22/amber22_src/build
cd /media/gpu-1/GPU_1_2TB/Ambertools22/amber22_src/build

2. 安装对应版本的Fortran编译器

AmberTools依赖Fortran,需安装与gcc-8配套的gfortran-8:

sudo apt update && sudo apt install gfortran-8

3. 重新执行CMake配置

移除COMPILER=GNU参数,同时完整指定C、C++、Fortran三个编译器的路径:

cmake $AMBER_PREFIX/amber22_src \
-DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/amber22 \
-DMPI=FALSE -DCUDA=TRUE -DINSTALL_TESTS=TRUE \
-DCMAKE_C_COMPILER=/usr/bin/gcc-8 \
-DCMAKE_CXX_COMPILER=/usr/bin/g++-8 \
-DCMAKE_Fortran_COMPILER=/usr/bin/gfortran-8

4. 验证与编译

配置成功后,CMake日志应显示编译器版本为8.x系列:

The C compiler identification is GNU 8.x.x
The CXX compiler identification is GNU 8.x.x
The Fortran compiler identification is GNU 8.x.x

之后执行编译安装:

make install
source $AMBER_PREFIX/amber22/amber.sh

内容的提问来源于stack exchange,提问作者AKA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 13:20:29