Ошибки установки ROOT: перекомпилируйте с -fPIC - PullRequest
0 голосов
/ 31 декабря 2011

Я сейчас пытаюсь установить пакет ROOT, доступный из

После ./configure, make;Я получил ошибки, как показано ниже:

/usr/bin/ld: /share/lib/python2.6/config/libpython2.6.a(abstract.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/share/lib/python2.6/config/libpython2.6.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [lib/libPyROOT.so] Error 1

Я действительно много читал об этой проблеме;Кажется, это вызвано тем, что на 64-битной машине запущено 32-битное программное обеспечение, и мне нужно перенастроить с -fPIC.Поэтому я попытался запустить

CFLAGS="-O3 -fPIC" ./configure

или Согласно Передача флага gcc через makefile Добавить внутрь. bashrc, я добавил:

export CFLAGS="$CFLAGS -fPIC"
export CXXFLAGS="$CXXFLAGS -fPIC"

Тем не менее, ни один из них не работает!

Это действительно сводит меня с ума .... Единственное отличие моего случая с другими заключается в том, что у меня проблема с Python2.6, а у других - с другими библиотеками ...

Может кто-нибудь помочь мне ....

1 Ответ

2 голосов
/ 31 декабря 2011

Ошибка говорит вам перекомпилировать libpython2.6.a с -fPIC, а не с установленным вами программным обеспечением.На самом деле это означает, что вы пытаетесь связать разделяемую библиотеку с libpython2.6.a, в то время как вам, вероятно, нужно связать ее с libpython2.6.so.Таким образом, общий -lpython2.6 либо не установлен, либо не найден.Исправьте это.

...