Ошибка компиляции IcePy (Ice 3.3.1): перемещение по локальному символу - PullRequest
0 голосов
/ 29 июля 2010

У меня проблема при попытке собрать IcePy (из Ice 3.3.1) (для python 2.4.4).Компиляция, тестирование и установка самого Ice (версия cpp) в порядке, но когда я пытался собрать интерфейс python (каталог «py»), я получаю следующую ошибку (извините за усеченные пути):

.../lib/python2.4/config/libpython2.4.a(abstract.o):
relocation R_X86_64_32 against `a local symbol' can not be used when making
a shared object; recompile with -fPIC
.../lib/python2.4/config/libpython2.4.a: could not read symbols: Bad value
collect2: ld returned 1 exit status

Кто-нибудь может объяснить мне, что означает эта проблема перемещения (или, по крайней мере, дать мне ссылку)?Спасибо в avdance за вашу помощь.Даже если вы ничего не знаете о Ice, ваши комментарии к сообщению об ошибке приветствуются.(конечно, строка компиляции уже содержала -fPIC, поэтому «перекомпиляция с -fPIC» мне не очень помогает ...)

1 Ответ

1 голос
/ 30 июля 2010

Скорее всего, abstract.o не скомпилировано с -fPIC, поэтому компоновщик советов дал вам правильный ответ.

Вернитесь в свой журнал сборки и убедитесь, что -fPIC не было там, когда была собрана libpython2.4.a. Обратите внимание, что -fPIC необходим для самого libpython2.4.a, а не только для IcePy.

Если это там , вы обнаружили ошибку в GCC (что маловероятно).

Вы можете узнать о компоновщиках и перемещениях здесь или здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...