从源代码安装lal-6.19.2时如何解决“用-fPIC重新编译”

时间:2019-04-06 09:33:29

标签: c ubuntu-16.04

我正在按照https://wiki.ligo.org/Computing/DASWG/LALSuiteInstall上列出的步骤首先安装lal来安装lalsuite。

运行该步骤时:make

我收到了这样的错误:

/usr/bin/ld: /usr/local/lib/libfftw3f.a(apiplan.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libfftw3f.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
Makefile:850: recipe for target 'liblal.la' failed
make4: * [liblal.la] Error 1
make4: Leaving directory '/tmp/tmp.v2p1DU6shl/lal-6.19.2/src'
Makefile:978: recipe for target 'all-recursive' failed
make3: [all-recursive] Error 1
make3: Leaving directory '/tmp/tmp.v2p1DU6shl/lal-6.19.2/src'
Makefile:749: recipe for target 'all' failed
make2: [all] Error 2
make2: Leaving directory '/tmp/tmp.v2p1DU6shl/lal-6.19.2/src'
Makefile:619: recipe for target 'all-recursive' failed
make1: [all-recursive] Error 1
make1: Leaving directory '/tmp/tmp.v2p1DU6shl/lal-6.19.2'
Makefile:516: recipe for target 'all' failed
make: ** [all] Error 2

我尝试了许多方法,例如:更改gcc版本(我使用gcc版本5.4.0),重新安装FFTW库。但是似乎一切都没有改变。我认为关键是“用-fPIC重新编译”,但是在搜索了许多结果之后,仍然不知道。

lal已安装在通用的Linux版本4.15.0-46(buildd @ lgw01-amd64-008)(gcc版本5.4.0 20160609(Ubuntu 5.4.0-6ubuntu1〜16.04.10))和x86_64 GNU / Linux

Linux 4.15.0-46版通用

0 个答案:

没有答案