gpt4 book ai didi

c++ - 如何使用 PIC 编译 gnu libstdc++.a?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:24:37 28 4
gpt4 key购买 nike

我正在尝试为没有足够新的 libstdc++ 来运行它的系统编译共享库,这意味着我需要将 libstdc++ 静态链接到库中。我试图直接链接到 libstdc++.a (-Wl,-Bstatic -L/path/to/lib64 -lstdc++),但我收到一个错误,似乎表明我的 libstdc++ .a 未与 PIC 链接:

/usr/bin/ld: lib64/libstdc++.a(compatibility.o): relocation R_X86_64_32 against `typeinfo for __cxxabiv1::__forced_unwind' can not be used when making a shared object; recompile with -fPIC
lib64/libstdc++.a: could not read symbols: Bad value

我尝试使用 CFLAGS="-fPIC"和 CXXFLAGS="-fPIC"重新编译 GCC,但这似乎没有任何作用。

帮忙吗?

最佳答案

想法是将--with-pic 选项传递给configure。 GCC 构建是一个非常复杂的野兽,具有多个阶段,因此简单地传递 CFLAGS 变量可能无法按预期工作。

关于c++ - 如何使用 PIC 编译 gnu libstdc++.a?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23257965/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com