Чтобы добавить gtk-2.0 к моему virtualenv, я сделал следующее:
$ virtualenv --no-site-packages --python=/usr/bin/python2.6 myvirtualenv
$ cd myvirtualenv
$ source bin/activate
$ cd lib/python2.6/
$ ln -s /usr/lib/pymodules/python2.6/gtk-2.0/
Virtualenv в Ubuntu без пакетов сайтов
Теперь в интерпретаторе Python, когда я импортирую gtk он говорит: нет модуля с именем gtk. Когда я запускаю интерпретатор с sudo, он работает.
Любая причина, по которой мне нужно использовать sudo и есть ли способ предотвратить это?
Обновление:
Забыл упомянуть, что cairo и pygtk работают, но это не то, что мне нужно.
Обновление 2:
Вот каталог, чтобы показать, что я не сумасшедший.
http://www.friendly-stranger.com/pictures/symlink.jpg
sudo python
прекрасно импортирует его, потому что этот интерпретатор не использует вашу виртуальную среду. Так что не делай этого.
Вы связались только с одним из необходимых элементов. Сделайте и другие, упомянутые в ответе на вопрос, который вы связали.
(Файл pygtk.pth имеет особое значение, так как он сообщает python, что тот каталог, на который вы ссылаетесь, должен быть помещен в путь python)
Поместите этот материал в $VIRTUALENV/lib/python2.6/ site-packages/, а не каталог над ним.
Похоже, файлы .pth читаются не из этого каталога, а только из site-packages