I'm having the exact problem tyrolite is having (Exact same symbol, Arch Linux - yes, we suffer python2/3 problems all the time these days.)
It seems that it's compiling a python3 symbol:
boost::python::detail::init_module(PyModuleDef&, void (*)())
into the PyCEGUI objects, not the python2 symbol:
boost::python::detail::init_module(char const*, void (*)())
From what I can see, this decision is made in boost/python/module_init.hpp from checking PY_VERSION_HEX, which in turn is ultimately defined by an included <patchlevel.h> - apparently the one included is /usr/include/python3.3m/patchlevel.h, not /usr/include/python2.7/patchlevel.h.
Unfortunately, I'm not sure what the "right" way to fix this issue is. Maybe cmake or make is somehow meant to specify a "-I" option to specify the python directory? This must be happening somewhere already, since boost needs it I think. I have really no familiarity with cmake, and it's a lot to try and dig through / figure out. Anyways, maybe I'm just missing some simple configuration from the top level that is meant to handle this. (For the record: yes, I used the PYTHON_EXECUTABLE variable as described in the tutorial).
Maybe this info will help someone out, in any event...
~ Browser12
tyrolite wrote:Hello everyone !
I'm having a similar problem. At first it says that PyCEGUI is missing but then I can see that it found the library and has an undefined symbol.
Here's the output:
Code: Select all
[tyrolite@archlinux bin]$ PYTHONPATH=../../cegui_mk2/build/lib:../:$PYTHONPATH python2 ./ceed-gui
Following problems found:
PyCEGUI package is missing! PyCEGUI provides Python bindings for CEGUI, the library this editor edits assets for, see cegui.org.uk. (exception: /home/tyrolite/soft/cegui_mk2/build/lib/PyCEGUI.so: undefined symbol: _ZN5boost6python6detail11init_moduleER11PyModuleDefPFvvE)
Your environment doesn't meet critical prerequisites! Can't start!
PS: I followed this tutorial:
http://www.cegui.org.uk/wiki/index.php/CEED and I got every dependency for python2 (pyside, pyside-tools etc.) since I have archlinux with cegui 0.8.2 .
Thanks in advance !