我刚刚发现RedHat提供了这个"开发人员工具集",它允许我安装(当然还有)最新的gcc-4.7.2.我在Centos上使用它,但过程是一样的.
安装后,您可以通过发出以下命令启用此工具集的新bash会话:
scl enable devtoolset-1.1 bash
Run Code Online (Sandbox Code Playgroud)
这很好用.现在,我可以以某种方式将此添加到我的bashrc中,因为这实际上启动了一个新的bash会话吗?或者我应该更好地将它放在我的makefile中,以避免开始新的bash会话.有没有办法在makefile中发出这个?
最近,我注意到我的程序具有很大的性能下降,因为版本低于5的gcc的标准库实现产生list::size()了O(n)。
我正在使用CentOS 7.2,其默认gcc版本为4.8.5。因此,我安装了scl和devtoolset-7,并重建了程序。但是,我发现list::size()程序中仍然是一个O(n)方法,即使我显式设置_GLIBCXX_USE_CXX11_ABI为1。
为什么?这很奇怪。
我正在运行 CentOS 6.4 并且需要更高版本的 C++ 编译器来构建我的开发工具(在本例中为 Qt Creator)。
我不清楚使用 devtools 的含义,我希望有人能解释一下。
我已经习惯了在Debian / Ubuntu的发行版安装软件包,但现在我需要安装gcc和g++版本8 *。CentOS资料库中只有4. *版本。手动安装它们的正确方法是什么?
redhat-dts ×4
c++ ×2
centos ×2
devtoolset ×2
gcc ×2
g++ ×1
libraries ×1
libstdc++ ×1
makefile ×1
redhat ×1