在ubuntu24上编译安装lammps,采用make方式,发现默认gcc(13)会报错,提示头文件(.h)找不到_float32等error,后来发现是gcc版本问题,降为gcc-12即可解决:
ubuntu gcc版本切换方法(g++需要和gcc保持一致):
ubuntu24默认为gcc-13,可以通过 gcc --version查看
sudo apt-get install gcc-12 g++-12
如果系统提示无法定位则:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-12 g++-12
安装好后切换版本:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 10 --slave /usr/bin/g++ g++ /usr/bin/g++-13
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-13
上面命令中gcc-13和gcc-12后面的数字代表优先级,越大则默认当前版本,执行上述命令,则将当前gcc版本切换为gcc-12
然后编译lammps-240829版本则正确