Перемещение R_X86_64_32S против `_Py_NotImplementedStruct'не может быть использовано при создании общего объекта; перекомпилировать с -fPIC

Я получил это сообщение об ошибке после запуска его на Centos 7 (512 МБ).

sudo make pycaffe

или же

sudo make distribute

Сообщение об ошибке

CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
/bin/ld: /usr/local/lib/libpython2.7.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libpython2.7.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [python/caffe/_caffe.so] Error 1

Пожалуйста посоветуй. Спасибо.

2 ответа

У меня была такая же проблема с попыткой установить dlib. Решением было построить Python с --enable-shared флаг. Когда используешь pyenv это можно сделать так:

PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install --force 2.7.11

Недавно я столкнулся с подобной ошибкой в ​​другом программном пакете.

Попробуйте пройти CFLAGS="-fPIC" или же CXXFLAGS="-fPIC" при настройке или сборке. Это сработало для меня.

Вы также можете перейти на эту страницу на -fPIC ошибки:

Другие вопросы по тегам