我正在运行CentOS 6.4,并且需要更高版本的C ++编译器来构建我的开发工具(在这种情况下为Qt Creator)。
我不清楚使用devtools的含义,希望有人能解释一下。
我希望这个较晚的答案仍然可以为您提供帮助。我发现,devtoolset
在RHEL 6.4上用(在我的情况下为1.1,但是应该没什么大不了)编译项目会产生几乎可以在标准RedHat EL 6.4上运行的二进制文件(对于Centos 6.4应该与此类似)。
我遇到的唯一麻烦是使用编译项目-std=c++11
,由于符号不兼容,这产生了一些问题。原因是GCC人员认为标准库的这些部分在GCC 4.4中是试验性的,因此他们在某些地方破坏了ABI兼容性。
事实证明,有一个简单的解决方法:将程序与其他命令行参数链接-static-libstdc++
。这样,二进制文件会变得更大一些,但可以在未修改的RHEL 6.4上运行,而无需为安装其他库/更新devtoolset
。
要明确回答您的问题:
-static-libstdc++
在链接时添加即可。本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句