gpt4 book ai didi

dlang : relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC

转载 作者:行者123 更新时间:2023-12-04 12:17:59 25 4
gpt4 key购买 nike

我正在尝试使用 dmd 编译一个简单的 hello world,但我得到以下输出:

dmd hi
/usr/bin/ld: hi.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
hi.o: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
--- errorlevel 1

所以我尝试使用 -fPIC

/usr/bin/ld: /usr/lib/libphobos2.a(object_a_66e.o): relocation R_X86_64_32 against `_D12TypeInfo_Aya6__initZ' can not be used when making a shared object; recompile with -fPIC
/usr/lib/libphobos2.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
--- errorlevel 1

这在大约一个月前还不存在。

系统:Arch Linux 64 位。

可能是什么问题?

dmd -m32 hi
/usr/bin/ld: skipping incompatible /usr/lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../../../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../../../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /lib/../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /lib/../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/../lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../../libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../../libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/libphobos2.a when searching for -l:libphobos2.a
/usr/bin/ld: cannot find -l:libphobos2.a
/usr/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for -lpthread
/usr/bin/ld: skipping incompatible /usr/lib/libpthread.a when searching for -lpthread
collect2: error: ld returned 1 exit status
--- errorlevel 1

最佳答案

发生此错误的原因是存在 https://github.com/thestinger/hardening-wrapper 的强化包装器 | .删除这个包解决了这个问题。

关于dlang : relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32019679/

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