相关疑难解决方法(0)

使用哈希样式SYSV编译libstdc ++

有什么方法可以使用哈希样式SYSV而不是GNU / Linux来编译GCC的libstdc ++?我有一个工具链(通过crosstool-ng),可用于编译我们的公司库以与各种Linux系统一起使用。

这些系统之一是非常老的RedHat,它只有SYSV哈希样式,当我使用工具链编译仅C的库/程序时,由于生成的二进制文件使用了SYSV,所以它工作得很好。

但是,当我与libstdc ++链接时,二进制文件会自动更改为GNU / Linux风格,原因是因为libstdc ++是作为GNU / Linux构建的,因此出现了问题。

在此系统中运行二进制文件给我错误

ELF file OS ABI invalid
Run Code Online (Sandbox Code Playgroud)

仅出于完整性考虑,我已经尝试了-Wl,-hash-style = sysv,但没有成功。

另外,我还有另一个用于ARM系统的工具链,它们具有相同版本的GCC,GLIBC等,但是在这个工具链中,libstdc ++使用SYSV,不知道为什么。

提前致谢!

c++ linux gcc sysv

5
推荐指数
1
解决办法
876
查看次数

标签 统计

c++ ×1

gcc ×1

linux ×1

sysv ×1