Ошибка неопределенного символа при импорте PySide

Я пытаюсь создать установку Python 2.7 на CentOS 6, которая включает PySide. Я собрал пакет колес в соответствии с этими инструкциями и установил его без ошибок. .

Однако я получаю эту ошибку, когда пытаюсь запустить скрипт после установки:

/opt/python/lib/python2.7/site-packages/PySide/libpyside-python2.7.so.1.1: undefined symbol: _ZN9QMetaType15registerTypedefEPKci

Я получаю ту же ошибку с «из PySide импортировать QtCore» в IPython.

Это команды, которые я использовал для сборки и установки:

/opt/python/bin/python setup.py bdist_wheel --qmake=/opt/python/lib/qt4/bin/qmake
cp dist/PySide-1.2.2-cp27-none-linux-x86_64.whl /opt/python/src
cd /opt/python
bin/pip ../src/PySide-1.2.2-cp27-none-linux-x86_64.whl
bin/python bin/pyside_postinstall.py -install

Обновление: мне удалось решить эту проблему, установив LD_LIBRARY_PATH для включения /opt/python/lib/qt4. Я предполагал, что это будет встроено в PySide, установив путь qmake во время компиляции.

Есть ли способ сделать это без установки LD_LIBRARY_PATH?


person orodbhen    schedule 18.11.2014    source источник


Ответы (1)


Изменение команды конфигурации Qt на:

./configure -debug -rpath -prefix '/opt/python/lib/qt4' | tee config.log

Использование -rpath делает так, что все, созданное с помощью пользовательского qmake, будет иметь путь к библиотеке Qt, жестко запрограммированный в нем.

person orodbhen    schedule 19.11.2014