Haskell 堆栈生成失败,出现LLD错误
我正在尝试使用Haskell 堆栈生成失败,出现LLD错误,haskell,haskell-stack,lld,Haskell,Haskell Stack,Lld,我正在尝试使用stack(Haskell ide engine和hlint)构建一些Haskell软件包,但它们都失败了,出现了许多ld.lld错误消息,都与R_X86_64_32S重新定位有关,例如: ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: stg_bh_upd_frame_info in readonly segment; recompile object files with -
stack
(Haskell ide engine
和hlint
)构建一些Haskell软件包,但它们都失败了,出现了许多ld.lld
错误消息,都与R_X86_64_32S
重新定位有关,例如:
ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: stg_bh_upd_frame_info in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output
>>> defined in /home/kas/.stack/programs/x86_64-linux/ghc-tinfo6-8.6.5/lib/ghc-8.6.5/rts/libHSrts_thr.a(Updates.thr_o)
>>> referenced by /home/kas/.stack/setup-exe-src/setup-shim-mPHDZzAJ.o:(s6WS_info)
我尝试将stack
配置为使用不同的链接器(使用ghc选项
标志),但无法使其正常工作,它总是使用lld
有人知道我如何更改堆栈的链接器,或者以其他方式修复错误吗
谢谢 参见堆栈中的答案
自己的常见问题解答 我认为关键点是-fPIC
标志谢谢!我应该如何/在哪里设置该标志?