Как поместить модуль "build" в путь поиска Python - PullRequest
0 голосов
/ 03 июня 2011

После стольких хлопот я создаю libxml из источника . Я выполнил следующие шаги

  1. Загрузил lxml.tar.gz и извлек его содержимое
  2. Сборка с использованием

python2.7 setup.py build_ext -i -I /usr/include/libxml2 --with-xslt-config=/opt/xslt/bin/xslt-config

  1. Я попытался зайти в оболочку Python и попытался import lxml. это не сработало

  2. Тогда я пошел в каталог

    /home/user/tmp/(extracted lxml directory/

и в командной строке Linux я набрал

PYTHONPATH=src python27

потом я попробовал import lxml и тогда все заработало.

src папка содержит имя папки lxml

Итак, я хочу знать, что когда я собираю lxml, это означает, что мне всегда нужен этот каталог, чтобы использовать его, или я могу удалить его. Если нет, то в каком месте мне нужно поместить эту папку, чтобы, если я запускаю python обычным способом, я мог получить доступ к этому

  1. Разве модули, которые мы строим сами, не установлены в папке python ??
  2. Могу ли я сделать из него яйцо питона

Ответы [ 2 ]

1 голос
/ 03 июня 2011

Вы сказали это build_ext, поэтому он просто скомпилировал его и не установил. Если вы указали install, он установил бы его в общесистемном каталоге (но для этого вам нужны разрешения на запись) или в любой указанный вами каталог (с --home (для установки в качестве пользователя) или --prefix (для установки) от имени root до нестандартного каталога, например, в опции /opt).

0 голосов
/ 03 июня 2011

Когда вы установили PYTHONPATH, вы указали относительный путь, поэтому он будет работать только из этой папки.Если указать абсолютный путь, например:

export PYTHONPATH=/home/user/tmp/extracted_whatever

Он будет работать независимо от того, в какой папке вы сейчас находитесь.

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