Установить pygobject без прав root - PullRequest
1 голос
/ 20 ноября 2011

Я пытаюсь установить pygobject-2.11.3 без прав root.Я скачал исходный код, и при запуске ./configure --prefix = / home / my_username / local я получаю:

проверка на GLIB - версия> = 2.8.0 ... нет * Не удалось запустить тестовую программу GLIB, проверяя, почему ... Тестовой программе не удалось скомпилировать или связать.См. Файл config.log для точной ошибки **, которая произошла.Обычно это означает, что GLIB установлен неправильно.configure: error: может быть, вы хотите ветку pygobject-2-4?

Итак, я установил glib-2.8.6 таким же образом (./configure --prefix = / home / my_username / local &&make && make install) Нет сообщения об ошибке для glib.

После попытки переустановить pyobject я получаю ту же ошибку.

При просмотре журналов я вижу: glib.h: такого файла нет илиdirectory

Так что, похоже, скрипт ./configure pyobject не находит glib.h, который находится в / home / my_username / local / include

/ home / my_username / local - это первый элементmy $ PATH

uname -a: Linux u205 2.6.9-42.ELsmp # 1 SMP Ср 12 июля 23:32:02 EDT 2006 x86_64 x86_64 x86_64 GNU / Linux

Спасибо за любыепомощь

Ответы [ 3 ]

0 голосов
/ 29 ноября 2011

В скрипте configure используется pkg-config, и, если вы установили библиотеку в неканонический каталог, вам нужно установить переменную PKG_CONFIG_PATH.

В вашем конкретном случае это должно быть:

$ export PKG_CONFIG_PATH=/home/my_username/local/lib/pkgconfig

Чтобы проверить это, вы можете попробовать:

$ pkg-config --modversion glib-2.0

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

0 голосов
/ 05 июня 2013

Вам необходимо добавить в LD_LIBRARY_PATH путь к установленной GLIB.

С уважением, Manuel

0 голосов
/ 23 ноября 2011

Вам необходимо установить переменную окружения PYTHONPATH, например,

env PYTHONPATH=/home/my_username/local/lib/python/ <command>

Если вы используете Bash, укажите это в вашем bashrc:

export PYTHONPATH=/home/my_username/local/lib/python/

Семантика очень похожа на PATH, за исключением того, что PYTHONPATH используется Python для поиска модулей, а PATH используется оболочкой для поиска команд. Поэтому вы можете иметь несколько каталогов:

export PYTHONPATH = "/code/proj_A/lib/python/:/code/proj_B/lib/python/"

См. документацию для получения дополнительной информации.

...