问题标签 [devtoolset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用现代编译器编译的 C++ 项目,但链接到过时的 libstdc++
Centos 7
考虑在虚拟机或容器中构建和交付 C++ 项目的情况。默认gcc
为。Centos 7
_ 4.8
为了允许开发人员使用现代 C++,更新版本的gcc
(例如,6.3
)安装到作为 CI 服务器运行的 Centos 7 中。这提供了-std=c++14
支持。
这是编译和链接命令的简短示例:
无论如何,生成的工件似乎与系统默认版本相关联libstdc++
:
很容易发现该/lib64/libstdc++.so.6
版本是4.8.5
:
这个构建环境配置有效吗?
c++ - 无法使用 -fvtable-verify 构建 C++ 二进制文件
我正在尝试在我的项目中启用 vtable 验证。当我尝试使用标志 (-fvtable-verify=std) 时出现错误g++: error: -fvtable-verify=std is not supported in this configuration
。
你能帮我弄清楚出了什么问题吗?
c++ - 使用“--enable-vtable-verify”构建 Devtoolset 7 gcc
我的机器上安装了 devtoolset7 软件包
我正在尝试构建一个二进制文件-fvtable-verify=std
不幸的是,devtoolset 7 提供的 gcc 不是用--enable-vtable-verify
如何使用--enable-vtable-verify
与 devtoolset 7 类似的配置重建 devtoolset 7 gcc。
c++ - g++ 说 at_quick_exit 没有在 cstdlib 中声明
我想在 CentOS 6 上编译 C++11 代码,所以我按照说明安装了 devtoolset。这里我使用的是 devtoolset-6,它的 gcc 版本是 7.3.1。我正在尝试构建一个简单的 C++ 代码:
用命令g++ -std=c++11 test.cc
。它给出了以下错误:
我试过 devtoolset-2 到 devtoolset-7,它们都有相同的错误。
centos - 如何在 CentOS 6 上安装 devtoolset-7 i686?
在 CentOS6 上安装 devtoolset-7.x86_64 非常简单:
但是,i686 不提供下载: http: //mirror.centos.org/centos/6/sclo/
所以我找到了http://repo.cloudlinux.com/cloudlinux/6.10/sclo/devtoolset-7/i386/但我不知道如何添加到我的回购列表中,例如 yum-config-manager --add-repo
是否可以为 i686 安装 devtoolset-7?还有其他选择吗?
gcc - nm devtoolset 的 .so 文件给出文件格式无法识别
我只是好奇为什么nm
抱怨:
文件格式无法识别
如果我做:
但是,可以对股票一成功执行相同的命令/lib64/libstdc++.so.6
jenkins - 詹金斯找不到 g++
我正在学习所有这些新技术。我有一个用于私人开发的家庭服务器,最新版本的 centos 7.6(最小安装)。我试图让服务器尽可能轻。
我已经安装了 jenkins (v2.164.2) 并且它正常运行。我创建了一个新的 Freestyle 项目来编译托管在另一个自己的 gogs 服务器上的 g++ 项目。我已经定义了 gogs url 和凭据,然后在执行 shell 命令中添加了以下内容:
当我按下“立即构建”按钮时,它会失败并显示以下消息:
其中: (/sbin:/usr/sbin:/bin:/usr/bin) 中没有 g++
克隆存储库等似乎工作正常。
我没有安装默认的 g++ 版本,而是安装了 devtools-7 (g++ v7.3.1) 附带的那个。我在 /etc/profile.d/devtools.sh 下创建了一个新文件,其中包含以下文本:
如果我登录到服务器中的 bash shell,然后运行 which g++,我会得到预期的输出。
最后,问题是:为什么詹金斯不接受这个?据我所知,在 /etc/profile.d 下添加该文件可确保每个人都能够访问 g++。
非常感谢您的任何帮助。
c++ - 从 devtoolset 指向 libstdc++ - 软件集合
我有一个"Cprog"
需要 GCC 4.9 和 C++11 的应用程序libstdc++.so
。
为了在 CentOS 6 上满足这个要求,我正在使用 Red Hat 的devtoolset-6
.
该库位于:
我将其添加到LD_LIBRARY_PATH
路径变量中:
在编译时,找不到 lib:
任何帮助将不胜感激。
docker - 无法弄清楚如何在 Centos 6 Docker 映像中使用较新版本的 g++
我有一个 Docker 映像,用于在 Jenkins 和 Bamboo 中运行测试。我需要升级g++
used 的版本(支持 C++11)。
我尝试使用大致如下所示的 Dockerfile:
我的问题是,当g++
在容器中使用时,它使用旧的,而不是新的devtoolset-7
,即使新的应该来自 bashrc。(也许我误解了 Docker 将如何尝试运行所有内容。)
谁能在这里指出我正确的方向?
gcc - CMake 使用来自 devtoolset 的 gcc,但链接到错误的 libgcc 和 libstd++
我有一个安装了 CMake、devtoolset-6 和标准 gcc 4.8.2 的项目。CMake 正确找到正确的 gcc:
PATH 和 LD_LIBRARY_PATH 已设置
该项目正确构建,但与 /usr/lib64 中的错误 libgcc 和 libstd++ 冲突
怎么了?