Как установить wxPython с помощью virtualenv

Я пытаюсь создать новое приложение с графическим интерфейсом для Python, и я решил использовать wxPython в качестве графического интерфейса, потому что мне нужен мультиплатформенный.

Проблема в том, что я хочу использовать virtualenv (с virtualenvwrapper), чтобы изолировать среду и иметь возможность воспроизводить ее на других машинах, где я буду работать, но я не могу установить wxPython.

Я установил его на свою машину с Ubuntu через apt-get, но этого недостаточно.

Я искал в Интернете решение, и я нашел ...

  • Эта страница http://batok.github.com/virtualenvwxp/, где объясняется способ взломать среду virtualenv, чтобы использовать локальную установку wxPython. Не лучшее решение, но это было бы хорошим обходным путем. Проблема в том, что это объясняется для Mac, и я не мог заставить его работать в моей Ubuntu.

  • Также нашел эту страницу Установка wxPython в virtualenv под Linux, где кто-то спрашивает что-то подобное. Я безуспешно пытался собрать wxPython таким образом.

Любая помощь будет оценена по достоинству.

В конце концов, я выбрал wxPython, потому что он мультиплатформенный, и я могу использовать его без проблем с лицензией, но, поскольку я еще не начал, я могу передумать, если есть другой более простой в установке фреймворк.

Заранее спасибо

20110925: Извините за задержку и спасибо за ответы. Я только что попытался установить wxpython, используя buildout и приведенные здесь ссылки, но у меня все еще та же проблема. Кажется, мне нужен пакет libgtk2.0-dev для компиляции wxpython...

Итак, есть ли способ установить этот пакет локально в среду сборки?

Еще раз спасибо.


person thamurath    schedule 21.08.2011    source источник
comment
В чем ошибка сборки при попытке сборки wxPython?   -  person Dan Cecile    schedule 21.08.2011
comment
кажется, что gtk отсутствует ... проверка GTK+ - версия ›= 2.0.0... нет *** Не удалось запустить тестовую программу GTK+, проверка почему... *** Тестовая программа не скомпилировалась или не скомпилировалась . См. файл config.log для *** точной ошибки, которая произошла.   -  person thamurath    schedule 22.08.2011


Ответы (3)


В итоге не смог решить эту проблему.

Я хочу создать воспроизводимую среду python со всеми требованиями внутри, используя buildout и/или virtualenv, чтобы я мог работать в любой системе Linux с установленными только virtualenv, python и компилятором C++.

Кажется, что единственный способ сделать это — использовать рецепты buildout cmmi для загрузки и сборки wxpython и ВСЕХ его зависимостей. Это действительно болезненный путь, и мне сейчас некогда.

Я решил использовать обходной путь: большую часть времени я буду работать на своем ноутбуке с Ubuntu, поэтому я установил wxpython из репозиториев и использую файл wx.pth, чтобы сделать его доступным для виртуальной среды.

Это не очень хорошее решение, но кажется лучшим до сих пор... поэтому, если кто-то знает лучшее решение, сообщите мне.

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

Спасибо за все ваши ответы и комментарии.

person thamurath    schedule 01.10.2011
comment
Если кому-то это не очевидно, ваш файл wx.pth должен содержать путь к локально установленному wx: echo /usr/lib/python2.6/dist-packages/wx-2.8-gtk2-unicode > $VIRTUAL_ENV/lib/python2.6/site-packages/wx.pth - person mgalgs; 01.05.2013
comment
Недавно я наткнулся на интересный проект, который можно было бы применить здесь vagrantup.com. - person thamurath; 04.07.2013
comment
Я знаю, что постить спасибо нехорошо, но... спасибо mgalgs.. это было ОЧЕНЬ ПОЛЕЗНО!!! Наконец-то благодаря вашему небольшому комментарию у меня все получилось! (Да, я проголосовал!) - person GreenAsJade; 10.11.2013

Решение, которое я использовал, состояло в том, чтобы установить python в мою основную систему:

Затем сделайте символическую ссылку из wx в моем системном питоне на мою виртуальную среду:

ln -s /usr/lib/python2.7/dist-packages/wxversion.py <virtual_env_path>/lib/python2.7/site-packages/wxversion.py

Где находится путь в моем случае к виртуальной среде с именем «fibersim», например:

/home/adam/anaconda/envs/fibersim

Потом import wx работал

Получено с: http://qopml.org/wp-content/uploads/2013/01/README.txt

person Adam Hughes    schedule 20.01.2015

Buildout позволяет вам устанавливать разные parts, чей recipe код определяет, как эта часть построено. Существуют cmmi рецепты для сборки с помощью Configure/Make/Make-Install ( КММИ). Вы можете использовать это для локальной сборки wxPython в сборке, а затем создать python интерпретатор, у которого есть эта сборка wxPython и ваши собственные яйца в пути.

См. этот сообщение в блоге и этот ответ для получения подробной информации.

Имейте в виду, что zc.recipe.egg также установит любые setuptools/distribute console_scripts также в каталоге bin сборки. См. также mr.developer для автоматическая проверка нескольких пакетов из VCS и работа над ними в одном билде.

person Ross Patterson    schedule 21.08.2011
comment
buildout был еще одним инструментом, который я искал некоторое время назад, но он кажется мне более сложным, чем pip ... я полагаю, мне придется бороться с этими рецептами ... спасибо за комментарий - person thamurath; 22.08.2011
comment
Спасибо за Ваш ответ. Наконец-то я попробовал сборку, следуя инструкциям, приведенным в записи в блоге, которую вы публикуете. wxpython загружается правильно, но проблема не устранена... - person thamurath; 25.09.2011