2014-12-10 2 views
2

Следующая процедура не работает. Я что-то упускаю?Как установить wxPython 3.0.1.1 в Python 2.7 virtualenv на Ubuntu 14.10?

  • Установка различных пакетов Ubuntu (предпосылки для компиляции)
  • Получить http://downloads.sourceforge.net/wxpython/wxPython-src-3.0.1.1.tar.bz2
  • распаковывать в wxPython-src-3.0.1.1/
  • Создать новую virtualenv называется test
  • Activate test virtualenv
  • В терминале, из wxPython-src-3.0.1.1/:

    ./configure --prefix=/home/username/.virtualenvs/test --with-gtk2 --enable-unicode --with-opengl 
    #lots of output, confirms "Configured wxWidgets 3.0.1 for `x86_64-unknown-linux-gnu'" 
    
    make install 
    #lots of output, confirms: 
    # The installation of wxWidgets is finished. On certain 
    # platforms (e.g. Linux) you'll now have to run ldconfig 
    # if you installed a shared library and also modify the 
    # LD_LIBRARY_PATH (or equivalent) environment variable. 
    
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/.virtualenvs/test/lib 
    # don't run ldconfig since that is a system tool, not appropriate for virtualenv? 
    
    cd wxPython 
    python setup.py install 
    # lots of output, starting: 
    # WARNING: WXWIN not set in environment. Assuming '..' 
    # Found wx-config: /home/username/.virtualenvs/test/bin/wx-config 
    #  Using flags: --toolkit=gtk2 --unicode=yes --version=3.0 
    # Preparing CORE... 
    # Preparing STC... 
    # Preparing GLCANVAS... 
    # Preparing GIZMOS... 
    # running install 
    # etc 
    

Последняя команда терпит неудачу с:

src/gtk/_core_wrap.cpp:20407:7: note: ‘arg3’ was declared here 
    int arg3 ; 
    ^
src/gtk/_core_wrap.cpp: In function ‘PyObject* _wrap_Image_SetAlphaBuffer(PyObject*, PyObject*, PyObject*)’: 
src/gtk/_core_wrap.cpp:3747:13: warning: ‘arg3’ may be used uninitialized in this function [-Wmaybe-uninitialized] 
      if (ALPHASIZE != self->GetWidth() * self->GetHeight()) { 
      ^
src/gtk/_core_wrap.cpp:20474:7: note: ‘arg3’ was declared here 
    int arg3 ; 
    ^
cc1plus: some warnings being treated as errors 
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 
+0

нашел подобные вопросы повторно не совсем-же версию/среды, которые не применяются - пытался http://stackoverflow.com/a/20170771/236081, который не имел никакого эффекта – d3vid

+0

это может быть вызвано http://packages.ubuntu.com/utopic/hardening-wrapper – d3vid

+0

Имела ту же проблему на Debian 8.3 с помощью wxPython 3.0. 2,0. Принятый ответ сработал (хотя я не уверен, что эти предупреждения были или имели в виду в первую очередь). – Tibo

ответ

7

Я использовал python setup.py install &> ~/error.txt передать сообщения об ошибках осведомленных коллег, обнаруживших, что C компиляция с помощью -Werror=format-security флага. Эта версия wxPython (и, возможно, другие) не может скомпилировать этот флаг.

Мои переменные среды $CPPFLAGS и $CFLAGS были пустыми. Оказывается, этот флаг запускается hardening-wrapper.

Итак, я отменяю флаг, вызывая последний шаг, как следует, и WxPython был успешно установлен:

CFLAGS=-Wno-error=format-security CPPFLAGS=-Wno-error=format-security python setup.py install 
Смежные вопросы