启动CMake时出现错误:错误日志

3
要安装charmm程序,我必须安装CMake,但它不会安装CMake。
[sohyeon@theochem11 cmake-3.15.3]$ ./bootstrap 
---------------------------------------------
CMake 3.15.3, Copyright 2000-2019 Kitware, Inc. and Contributors
Found GNU toolchain
C compiler on this system is: gcc       
---------------------------------------------
Error when bootstrapping CMake:
Cannot find a C++ compiler that supports both C++11 and the specified C++ flags.
Please specify one using environment variable CXX.
The C++ flags are "".
They can be changed using the environment variable CXXFLAGS.
See cmake_bootstrap.log for compilers attempted.
---------------------------------------------
Log of errors: /export/home/sohyeon/cmake-3.15.3/Bootstrap.cmk/cmake_bootstrap.log

所以我尝试运行那个脚本

[sohyeon@theochem11 cmake-3.15.3]$ env CC=cc CXX=CC ./bootstrap

但是仍然出现了相同的错误。

我在谷歌上搜索了其他方法,发现了这两种方式。

$ yum -y install gcc-c++ 
You need to be root to perform this command.

$ yum install gcc-c++.x86_64 
You need to be root to perform this command.

但是它并没有解决我的问题。 (而且我看到了cmake_bootstrap.log,但我不知道出了什么问题。)
(编辑) 谢谢大家!
操作系统版本:Linux theochem11.hpc.org 2.6.32-279.14.1.el6.x86_64 #1 SMP Tue Nov 6 23:43:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
[sohyeon@theochem11 cmake-3.15.3]$ gcc --version gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4) Copyright (C) 2010 Free Software Foundation, Inc. 这是自由软件; 请参阅源代码以获取复制条件。 没有保证; 甚至没有适合特定目的的适用性担保。
[sohyeon@theochem11 cmake-3.15.3]$ g++ --version g++ (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4) Copyright (C) 2010 Free Software Foundation, Inc. 这是自由软件; 请参阅源代码以获取复制条件。 没有保证; 甚至没有适合特定目的的适用性担保。

1
请向您的系统管理员询问已安装哪些开发工具(至少包括cmake和clang/g++),以及如何将它们引入范围。也许只需更新您的$PATH变量即可解决问题。 - Botje
找不到支持C++11和指定C++标志的C++编译器,请编辑您的问题以包括操作系统名称和版本,gcc/g++版本。然后您将获得有关可以构建Cmake的gcc版本的信息。 - Knud Larsen
2个回答

5

cmake-3.15.3 可以使用 g++ 6.3 到 9.2 版本进行引导。但是早期的 g++ 版本,如 4.9 或 5.3,会失败。


RHEL 6,安装gcc-c++-7.3:

# 1. Install a package with repository for your system:
# On CentOS, install package centos-release-scl available in CentOS repository:
$ sudo yum install centos-release-scl

# On RHEL, enable RHSCL repository for you system:
$ sudo yum-config-manager --enable rhel-server-rhscl-7-rpms

# 2. Install the collection:
$ sudo yum install devtoolset-7

# 3. Start using software collections:
$ scl enable devtoolset-7 bash

https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/

只安装了五个包,使用“yum install devtoolset-7-gcc-c ++”:

devtoolset-7-gcc-c++-7.3.1-5.15.el6.x86_64
devtoolset-7-binutils-2.28-11.el6.x86_64
devtoolset-7-libstdc++-devel-7.3.1-5.15.el6.x86_64
devtoolset-7-runtime-7.1-4.el6.x86_64
devtoolset-7-gcc-7.3.1-5.15.el6.x86_64

软件包http://mirror.centos.org/centos/7/sclo/x86_64/rh/devtoolset-7/


Cmake :

cd cmake-3.15.3/
scl enable devtoolset-7 bash     // g++ is set to "7.3"
./bootstrap

注意:命令scl enable devtoolset-7 bash仅在当前终端会话中有效。

P.S. : cmake3可以从EPEL仓库https://fedoraproject.org/wiki/EPEL获取 → sudo yum install cmake3 。您将获得cmake3-3.6.1-3.el6.x86_64。提供/usr/bin/cmake3

EPEL软件包https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/


参考评论

除了使用yum,还有其他方法吗?

可以使用rpm命令安装下载的软件包:需要root密码。示例...

rpm -Uvh cmake3-3.6.1-3.el6.x86_64

rpm -Uvh <package>.rpm <package>.rpm  <package>.rpm <package>.rpm <package>.rpm 

谢谢您的回答。我尝试了您的命令,所以我在我的Linux终端中编写了代码,但它没有起作用。 '[sohyeon@theochem11 ~]$ yum-config-manager --enable rhel-server-rhscl-6-rpms / 您必须是root用户才能更改yum配置。' 这句话的意思是我的Linux系统没有安装yum吗? - sohyeon
要使用 yum,必须输入 root 密码。如果您没有 Redhat 订阅,则可以使用 yum install [package].rpm 安装所需的软件包,也需要以 root 身份运行。 - Knud Larsen
除了使用yum,还有其他的方法吗? - sohyeon
安装已下载的软件包:请查看我编辑过的答案。 - Knud Larsen

0

我遇到了同样的问题,你可以通过下载最新版本来解决它。


最新版本是什么? - a544jh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接