2017-01-25 13 views
1

Я пытаюсь импортировать igraph.Graph из питона-igraph (0.7.1.post6) пакет с помощью питона 3.5.0 на Ubuntu 16.04.1 LT, но получаю сообщение об ошибке:xmlStrEqual при импорте igraph.Graph - увязка libxml2

from igraph._igraph import * 

ImportError: /home/ubuntu/djangoproject/env/lib/python3.5/site-packages/igraph/_igraph.cpython-35m-x86_64-linux-gnu.so: undefined symbol: xmlStrEqual 

Я понимаю, что пакет требует xmlStrEqual из libxml2, но это не было сделано. В моей системе установлен Libxml2. Запуск $apt-get install libxml2 дает:

libxml2 is already the newest version (2.9.3+dfsg1-1ubuntu0.1). 

Я использую virtualenv со следующей настройки следующим образом:

virtualenv -p python3 env 
source env/bin/activate 
pip install python-igraph==0.7.1.post6 

Запуск $ ldd /home/ubuntu/djangoproject/env/lib/python3.5/site-packages/igraph/_igraph*.so дает:

linux-vdso.so.1 => (0x00007ffdd33b8000) 
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7ce24c5000) 
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7ce2143000) 
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f7ce1f2c000) 
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7ce1d0f000) 
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7ce1946000) 
/lib64/ld-linux-x86-64.so.2 (0x000055e56299f000) 

Я бы ожидать связывания, таких как libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 также ,

Кто-нибудь знает, почему этого не происходит или решение этой проблемы?

ответ

0

Проблема была в том, что в системе была установлена ​​другая копия libxml2 в/usr/local/lib, и это было как-то непригодным для динамической компоновки. Исправлена ​​проблема с удалением дополнительной копии libxml2.

Here - это более полная учетная запись проблемы.

+0

Здравствуйте, у меня такая же проблема, не могли бы вы объяснить, как найти и удалить этот «непривлекаемый» libraby? – skkap