我的机器中安装了devtoolset7包
devtoolset-7-binutils-devel-2.28-11.el7.x86_64
devtoolset-7-runtime-7.1-4.el7.x86_64
devtoolset-7-binutils-2.28-11.el7.x86_64
devtoolset-7-gdb-8.0.1-36.el7.x86_64
devtoolset-7-libasan-devel-7.3.1-5.13.el7.x86_64
devtoolset-7-gcc-c++-7.3.1-5.13.el7.x86_64
devtoolset-7-libstdc++-devel-7.3.1-5.13.el7.x86_64
devtoolset-7-valgrind-3.13.0-11.el7.x86_64
devtoolset-7-gcc-7.3.1-5.13.el7.x86_64我正在尝试使用-fvtable-verify=std构建二进制文件
不幸的是,DevToolset7提供的gcc不是用--enable-vtable-verify构建的
如何使用与devtoolset7相似的配置用--enable-vtable-verify重新构建devtoolset7的gcc。
发布于 2019-09-12 17:18:35
devtoolset的全部要点是保持与系统编译器及其较旧的libstdc++.so.6库的向后兼容。--enable-vtable-verify选项使用不同的ABI创建了一个不兼容的C++运行时,它不能与任何未启用VTV编译的现有库一起使用。
创建与系统编译器显式不兼容的devtoolset编译器(旨在与系统编译器兼容)是没有意义的。
如果您想使用VTV,那么只需使用build your own GCC from source并启用VTV,但请注意,由该VTV编译的代码将与使用系统编译器或devtoolset编译器编译的代码不兼容。
https://stackoverflow.com/questions/52788144
复制相似问题