Building Phoenix on Travis-CI (Ubuntu 12.04) fails at ` python ./build.py build_py` step

Hello,

I’m trying to build Phoenix on Travis-CI. For those that don’t know, Travis is a Continuous Integration service that automates builds, installs, and scripts from a many different git/svn hosts. It’s basically like a cloud-based BuildBot.

Anyway, my project uses wxPython Phoenix 3.0.3.dev1820+49a8884 and Python 3.4. I develop on windows and use the wxPython_Phoenix-3.0.3.dev1820+49a8884-cp34-none-win_amd64.whl when building with AppVeyor (another CI service, but for Windows rather than Linux/Mac).

Since there are no pre-built binaries for Phoenix yet available for Ubuntu 12.04, I’ve taken to building Phoenix from source. I’ve gotten most of the way through the process, but the build fails during the build_py step.

You can see the full build log here (https://travis-ci.org/dougthor42/wafer_map/builds/72217442, but the interesting part is below:

[185/712] cxx: sip/cpp/sip_corewxHeaderColumn.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderColumn.cpp.3.o

[186/712] cxx: sip/cpp/sip_corewxHeaderColumnSimple.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderColumnSimple.cpp.3.o

[187/712] cxx: sip/cpp/sip_corewxHeaderCtrl.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderCtrl.cpp.3.o

[188/712] cxx: sip/cpp/sip_corewxHeaderCtrlEvent.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderCtrlEvent.cpp.3.o

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_arrowColour(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:113:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelBitmap(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:184:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelColour(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:223:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelFont(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:265:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelText(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:304:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_selectionColour(void*, PyObject*, PyObject*)’:

../../../sip/cpp/sip_corewxHeaderButtonParams.cpp:346:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

Waf: Leaving directory `/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4'

Build failed

 -> task in '_core' failed (exit status 1):

	{task 140029216390280: cxx sip_corewxHeaderButtonParams.cpp -> sip_corewxHeaderButtonParams.cpp.3.o}

['/usr/bin/g++', '-fPIC', '-pthread', '-pthread', '-pthread', '-I/usr/include/gtk-2.0', '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', '-I/usr/include/atk-1.0', '-I/usr/include/cairo', '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', '-I/usr/include/gio-unix-2.0/', '-I/usr/include/glib-2.0', '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', '-I/usr/include/pixman-1', '-I/usr/include/freetype2', '-I/usr/include/libpng12', '-UNDEBUG', '-g', '-pthread', '-fwrapv', '-fstack-protector', '-fno-strict-aliasing', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bld/lib/wx/include/gtk2-unicode-3.0', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/ext/wxWidgets/include', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4/sip/siplib', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/sip/siplib', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4/src', '-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/src', '-I/opt/python/3.4.2/include/python3.4m', '-DPYTHONDIR="/usr/local/lib/python3.4/site-packages"', '-DPYTHONARCHDIR="/usr/local/lib/python3.4/site-packages"', '-DHAVE_PYTHON_H=1', '-DHAVE_WX=1', '-DHAVE_WXADV=1', '-DHAVE_WXSTC=1', '-DHAVE_WXHTML=1', '-DHAVE_WXGL=1', '-DHAVE_WXWEBVIEW=1', '-DHAVE_WXXML=1', '-DHAVE_WXXRC=1', '-DHAVE_WXRICHTEXT=1', '-D_FILE_OFFSET_BITS=64', '-DWXUSINGDLL', '-D__WXGTK__', '../../../sip/cpp/sip_corewxHeaderButtonParams.cpp', '-c', '-o', 'sip/cpp/sip_corewxHeaderButtonParams.cpp.3.o']

Command '"/home/travis/virtualenv/python3.4.2/bin/python" /home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bin/waf-1.7.15-p1 --wx_config=/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bld/wx-config --python="/home/travis/virtualenv/python3.4.2/bin/python" --out=build/waf/3.4 configure build ' failed with exit code 1.

Finished command: build_py (2m3.778s)

The command "python ./build.py --build_dir=./bld build_py" failed and exited with 1 during .

Your build has been stopped.

As you can see, it's failing on "cxx: sip/cpp/sip_corewxHeaderCtrlEvent.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderCtrlEvent.cpp.3.o" with a "no member named" error.

Sadly I'm not familiar with wxPython development to debug this.

**Does anyone have any idea on how to get past this part of the build?**

<details class='elided'>
<summary title='Show trimmed content'>&#183;&#183;&#183;</summary>

----------------------------

If you're familiar with travis-ci, you can see my .travis.yml file [here](https://github.com/dougthor42/wafer_map/blob/29a026049d9f44ad2adf2193a2d25dfe7469d11c/.travis.yml) (https://github.com/dougthor42/wafer_map/blob/29a026049d9f44ad2adf2193a2d25dfe7469d11c/.travis.yml).

Basically I've spent a buttload of time trying to figure out how to get wxPython Phoenix working on Travis-CI with Python 3.4, and I'm getting close.

Here's the general flow for how I've done things:

1. Install sip from source

- For some reason, the 'build.py sip' command won't download it or can't find it, see

[Travis build #84](https://travis-ci.org/dougthor42/wafer_map/builds/72215098) (https://travis-ci.org/dougthor42/wafer_map/builds/72215098) - you'll notice

that it says that sip is downloaded but then it can't find the file

2. Set an environment variable to the sip install directory

3. Download wxPython Phoenix source code

4. Run each part of build.py separately so that I can more easily see which fails.

5. build.py gets through everything fine except for build_py

Thanks,

</details>

Sorry for the duplicate post.

Please send all responses to this one: https://groups.google.com/forum/#!topic/wxpython-users/XN32T3Ppr-4

···

On Thursday, July 23, 2015 at 11:38:50 AM UTC-7, Douglas Thor wrote:

Hello,

I’m trying to build Phoenix on Travis-CI. For those that don’t know, Travis is a Continuous Integration service that automates builds, installs, and scripts from a many different git/svn hosts. It’s basically like a cloud-based BuildBot.

Anyway, my project uses wxPython Phoenix 3.0.3.dev1820+49a8884 and Python 3.4. I develop on windows and use the wxPython_Phoenix-3.0.3.dev1820+49a8884-cp34-none-win_amd64.whl when building with AppVeyor (another CI service, but for Windows rather than Linux/Mac).

Since there are no pre-built binaries for Phoenix yet available for Ubuntu 12.04, I’ve taken to building Phoenix from source. I’ve gotten most of the way through the process, but the build fails during the build_py step.

You can see the full build log here (https://travis-ci.org/dougthor42/wafer_map/builds/72217442, but the interesting part is below:

[185/712] cxx: sip/cpp/sip_corewxHeaderColumn.cpp -> build/waf/3.4/sip/cpp/sip_corewxHeaderColumn.cpp.3.o

[186/712] cxx: sip/cpp/sip_corewxHeaderColumnSimple.cpp → build/waf/3.4/sip/cpp/sip_corewxHeaderColumnSimple.cpp.3.o

[187/712] cxx: sip/cpp/sip_corewxHeaderCtrl.cpp → build/waf/3.4/sip/cpp/sip_corewxHeaderCtrl.cpp.3.o

[188/712] cxx: sip/cpp/sip_corewxHeaderCtrlEvent.cpp → build/waf/3.4/sip/cpp/sip_corewxHeaderCtrlEvent.cpp.3.o

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_arrowColour(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:113:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelBitmap(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:184:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelColour(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:223:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelFont(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:265:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_labelText(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:304:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp: In function ‘PyObject* varget_wxHeaderButtonParams_m_selectionColour(void*, PyObject*, PyObject*)’:

…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp:346:13: error: ‘const sipAPIDef’ has no member named ‘api_get_reference’

Waf: Leaving directory `/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4’

Build failed

→ task in ‘_core’ failed (exit status 1):

{task 140029216390280: cxx sip_corewxHeaderButtonParams.cpp → sip_corewxHeaderButtonParams.cpp.3.o}

[‘/usr/bin/g++’, ‘-fPIC’, ‘-pthread’, ‘-pthread’, ‘-pthread’, ‘-I/usr/include/gtk-2.0’, ‘-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include’, ‘-I/usr/include/atk-1.0’, ‘-I/usr/include/cairo’, ‘-I/usr/include/gdk-pixbuf-2.0’, ‘-I/usr/include/pango-1.0’, ‘-I/usr/include/gio-unix-2.0/’, ‘-I/usr/include/glib-2.0’, ‘-I/usr/lib/x86_64-linux-gnu/glib-2.0/include’, ‘-I/usr/include/pixman-1’, ‘-I/usr/include/freetype2’, ‘-I/usr/include/libpng12’, ‘-UNDEBUG’, ‘-g’, ‘-pthread’, ‘-fwrapv’, ‘-fstack-protector’, ‘-fno-strict-aliasing’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bld/lib/wx/include/gtk2-unicode-3.0’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/ext/wxWidgets/include’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4/sip/siplib’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/sip/siplib’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/build/waf/3.4/src’, ‘-I/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/src’, ‘-I/opt/python/3.4.2/include/python3.4m’, ‘-DPYTHONDIR=“/usr/local/lib/python3.4/site-packages”’, ‘-DPYTHONARCHDIR=“/usr/local/lib/python3.4/site-packages”’, ‘-DHAVE_PYTHON_H=1’, ‘-DHAVE_WX=1’, ‘-DHAVE_WXADV=1’, ‘-DHAVE_WXSTC=1’, ‘-DHAVE_WXHTML=1’, ‘-DHAVE_WXGL=1’, ‘-DHAVE_WXWEBVIEW=1’, ‘-DHAVE_WXXML=1’, ‘-DHAVE_WXXRC=1’, ‘-DHAVE_WXRICHTEXT=1’, ‘-D_FILE_OFFSET_BITS=64’, ‘-DWXUSINGDLL’, ‘-D__WXGTK__’, ‘…/…/…/sip/cpp/sip_corewxHeaderButtonParams.cpp’, ‘-c’, ‘-o’, ‘sip/cpp/sip_corewxHeaderButtonParams.cpp.3.o’]

Command '“/home/travis/virtualenv/python3.4.2/bin/python” /home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bin/waf-1.7.15-p1 --wx_config=/home/travis/build/dougthor42/wafer_map/wxPython_Phoenix-3.0.3.dev1820+49a8884/bld/wx-config --python=“/home/travis/virtualenv/python3.4.2/bin/python” --out=build/waf/3.4 configure build ’ failed with exit code 1.

Finished command: build_py (2m3.778s)

The command “python ./build.py --build_dir=./bld build_py” failed and exited with 1 during .

Your build has been stopped.

As you can see, it’s failing on “cxx: sip/cpp/sip_corewxHeaderCtrlEvent.cpp → build/waf/3.4/sip/cpp/sip_corewxHeaderCtrlEvent.cpp.3.o” with a “no member named” error.

Sadly I’m not familiar with wxPython development to debug this.

Does anyone have any idea on how to get past this part of the build?


If you’re familiar with travis-ci, you can see my .travis.yml file here (https://github.com/dougthor42/wafer_map/blob/29a026049d9f44ad2adf2193a2d25dfe7469d11c/.travis.yml).

Basically I’ve spent a buttload of time trying to figure out how to get wxPython Phoenix working on Travis-CI with Python 3.4, and I’m getting close.

Here’s the general flow for how I’ve done things:

  1. Install sip from source
  • For some reason, the ‘build.py sip’ command won’t download it or can’t find it, see

Travis build #84 (https://travis-ci.org/dougthor42/wafer_map/builds/72215098) - you’ll notice

that it says that sip is downloaded but then it can’t find the file

  1. Set an environment variable to the sip install directory
  1. Download wxPython Phoenix source code
  1. Run each part of build.py separately so that I can more easily see which fails.
  1. build.py gets through everything fine except for build_py

Thanks,