Я не уверен, что установка python по умолчанию является той, на которую я устанавливал модули, и если это может быть причиной ошибки совпадения размера байта Unicode. Короче говоря, я установил Numpy 1.7 с помощью Python 2.7.3, и когда я пытаюсь установить эту другую программу, которая использует Python и Numpy в качестве зависимостей, я получаю эту ошибку:
Traceback (most recent call last):
File "setup.py", line 20, in <module>
from weblogolib import __version__
File "/home/chris/Documents/IS/Bioinformatics-Software/weblogo-3.3/weblogolib/__init__.py", line 108, in <module>
from numpy import array, asarray, float64, ones, zeros, int32,all,any, shape
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
from type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString
Поэтому я предполагаю, что у меня есть размер байт-бит в конфликте (2 байта и 4 байта). Я пошел проверять, есть ли у меня конфликтующие версии Python, которые могли бы испортить это.
python --version
Python 2.7.3
Но это, по-видимому, противоречит
which python
/usr/local/bin/python
Когда я перехожу в /usr/local/bin
я нахожу эти файлы (относящиеся к python):
python
python2
python2.7
python-config
python2-config
python2.7-config
Теперь я установил numpy в каталог dist-packages /usr/lib/python2.7/dist-packages
который соответствует тому, что я получаю для python --version
. Но тот факт, что когда я пытаюсь использовать which python
и получить каталог для python
а не python2.7
касается меня, что это может быть противоречиво, когда я пытаюсь установить программу, которая использует python и numpy в качестве зависимостей.
Поэтому я догадываюсь уточнить свой вопрос (ы): Являются ли эти нормальные файлы для установки на python или я каким-то образом установил три разные версии? Могут ли они вызвать мою ошибку с непризнанным символом? Есть ли способ удалить, если они действительно являются посторонними версиями?
Спасибо за любую помощь, которую вы можете предоставить!
О, и вот ссылка на предыдущий вопрос, который у меня был, где я редактировал PYTHONPATH
, пытаясь исправить импорт ImportError, который я получал, если это может повлиять на вещи... ImportError: Нет модуля с именем numpy
Вот результаты попыток virtualenv:
[email protected]:~/Documents/IS/Bioinformatics-Software$ virtualenv weblogo-3.3
New python executable in weblogo-3.3/bin/python
Installing setuptools.............done.
Installing pip...............done.
[email protected]:~/Documents/IS/Bioinformatics-Software$ cd weblogo-3.3
[email protected]:~/Documents/IS/Bioinformatics-Software/weblogo-3.3$ source bin/activate
(weblogo-3.3)[email protected]:~/Documents/IS/Bioinformatics-Software/weblogo-3.3$ pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/lib/python2.7/dist-packages
Cleaning up...