Discussion:
Cannot build Phoenix from github master
Thomas Christensen
2013-03-30 17:30:42 UTC
Permalink
cloned github wxWidgets into ~/wxWidgets
cloned github Phoenix into ~/Phoenix

I do:

$ python build.py build

wxWidgets compiles, but when Phoenix compiling starts I get:

Running command: build_py
Checking for /home/thomasc/Phoenix/bin/waf-1.7.10...
/usr/bin/python /home/thomasc/Phoenix/bin/waf-1.7.10
--wx_config=/home/thomasc/Phoenix/build/wxbld/wx-config --jobs=3
--python=/usr/bin/python --out=build/waf/2.7 configure build
Setting top to : /home/thomasc/Phoenix
Setting out to :
/home/thomasc/Phoenix/build/waf/2.7
Checking for 'gcc' (c compiler) : /usr/bin/gcc
Checking for 'g++' (c++ compiler) : /usr/bin/g++
Checking for program python : /usr/bin/python
Checking for python version : (2, 7, 3, 'final', 0)
Checking for library python2.7 in LIBDIR : yes
Checking for program
/usr/bin/python-config,python2.7-config,python-config-2.7,python2.7m-config
: /usr/bin/python-config
Checking for header Python.h
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
Checking for '/home/thomasc/Phoenix/build/wxbld/wx-config'
: yes
'configure' finished successfully (1.635s)
Waf: Entering directory `/home/thomasc/Phoenix/build/waf/2.7'
Traceback (most recent call last):
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Scripting.py",
line 97, in waf_entry_point
run_commands()
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Scripting.py",
line 153, in run_commands
ctx=run_command(cmd_name)
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Scripting.py",
line 146, in run_command
ctx.execute()
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Scripting.py",
line 351, in execute
return execute_method(self)
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Build.py",
line 106, in execute
self.execute_build()
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Build.py",
line 109, in execute_build
self.recurse([self.run_dir])
File
"/home/thomasc/Phoenix/bin/.waf-1.7.10-4f6df1d839dc35640834d81573053140/waflib/Context.py",
line 128, in recurse
user_function(self)
File "/home/thomasc/Phoenix/wscript", line 432, in build
source = getEtgSipCppFiles(etg) + rc,
File "/home/thomasc/Phoenix/buildtools/config.py", line 626, in
getEtgSipCppFiles
return _getSbfValue(etg, 'sources')
File "/home/thomasc/Phoenix/buildtools/config.py", line 619, in
_getSbfValue
for line in open(sbf):
IOError: [Errno 2] No such file or directory: 'sip/cpp/_core.sbf'
Command '/usr/bin/python /home/thomasc/Phoenix/bin/waf-1.7.10
--wx_config=/home/thomasc/Phoenix/build/wxbld/wx-config --jobs=3
--python=/usr/bin/python --out=build/waf/2.7 configure build ' failed with
exit code 2.
Finished command: build_py (4.278s)
Finished command: build (13m2.629s)
***@incubator_62c5ede2:~/Phoenix$
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Robin Dunn
2013-03-30 17:35:20 UTC
Permalink
Post by Thomas Christensen
cloned github wxWidgets into ~/wxWidgets
cloned github Phoenix into ~/Phoenix
$ python build.py build
Since you are using the code from github instead of the source snapshot
then you need to also generate the wrapper code, as well as the xml that
is used to generate that code. Try this:

python build.py dox etg --nodoc sip build
--
Robin Dunn
Software Craftsman
http://wxPython.org
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Thomas Christensen
2013-03-31 03:05:02 UTC
Permalink
Post by Robin Dunn
Since you are using the code from github instead of the source snapshot
then you need to also generate the wrapper code, as well as the xml that
python build.py dox etg --nodoc sip build
$ DOXYGEN=/usr/bin/doxygen python build.py dox etg --nodoc sip build

This is doxygen 1.8.1.2 (build.py downloads 1.8.2 x86-64 and I am on x86.)

The *dox* command completed though, but *etg* failed:

I am very interested in this project and appreciate any help I can get to
get me started :-)

$ DOXYGEN=/usr/bin/doxygen python build.py dox etg --nodoc sip build
Build using: /usr/bin/python
2.7.3 (default, Sep 26 2012, 21:53:58)
[GCC 4.7.2]
Python's architecture is 32bit

Running command: dox
./regen.sh xml
warning: ignoring unsupported tag `AUTOLINK_SUPPORT =' at line 38,
file Doxyfile
warning: ignoring unsupported tag `HTML_EXTRA_STYLESHEET =' at line 340,
file Doxyfile
Finished command: dox (22.530s)
Running command: etg
/usr/bin/python etg/_xrc.py --sip --nodoc
Traceback (most recent call last):
File "etg/_xrc.py", line 211, in <module>
run()
File "etg/_xrc.py", line 204, in run
tools.runGenerators(module)
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 542, in
runGenerators
g.generate(module)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 46, in
generate
self.generateModule(module, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 137, in
generateModule
self.generateModuleItems(module, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 180, in
generateModuleItems
function(item, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 428, in
generateClass
self.generateDocstring(klass, stream, indent2)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 598, in
generateDocstring
sigs = ctor.collectPySignatures()
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 506, in
collectPySignatures
f.makePyArgsString()
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 485, in
makePyArgsString
s += '=' + '|'.join([_cleanName(x) for x in default.split('|')])
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 431, in
_cleanName
name = self.fixWxPrefix(name, True)
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 89, in
fixWxPrefix
self._getCoreTopLevelNames()
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 124, in
_getCoreTopLevelNames
with open(filename, 'r') as f:
IOError: [Errno 2] No such file or directory: 'wx/core.pi'
Command '/usr/bin/python etg/_xrc.py --sip --nodoc' failed with exit code 1.
Finished command: etg (0.407s)
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Thomas Christensen
2013-03-31 03:21:30 UTC
Permalink
Post by Thomas Christensen
IOError: [Errno 2] No such file or directory: 'wx/core.pi'
I copied wx/grid.pi to wx/core.pi and replace grid with core in the file
since they seemed simple, and now it building.

Maybe a bug in master that core.pi is not created?
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Thomas Christensen
2013-03-31 03:39:36 UTC
Permalink
Post by Thomas Christensen
I copied wx/grid.pi to wx/core.pi and replace grid with core in the file
since they seemed simple, and now it building.
The build stopped with the error below, and I guess that's the things one
will experience with master compiles. Well I can get started exploring now,
so I will stick to the snapshots to test my application against Phoenix.

../../../sip/cpp/sip_corewxBitmapButton.cpp: In member function ‘void
sipwxBitmapButton::OnEnabled(bool)’:
../../../sip/cpp/sip_corewxBitmapButton.cpp:444:9: error: ‘OnEnabled’ is
not a member of ‘wxBitmapButton’
../../../sip/cpp/sip_corewxBitmapButton.cpp: In member function ‘void
sipwxBitmapButton::sipProtectVirt_OnEnabled(bool, bool)’:
../../../sip/cpp/sip_corewxBitmapButton.cpp:740:22: error: ‘OnEnabled’ is
not a member of ‘wxBitmapButton’
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Thomas Christensen
2013-03-31 13:15:25 UTC
Permalink
Post by Thomas Christensen
IOError: [Errno 2] No such file or directory: 'wx/core.pi'
I copied wx/grid.pi to wx/core.pi and replace grid with core in the file
since they seemed simple, and now it building.
Maybe a bug in master that core.pi is not created?
The attached patch fixes it.
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Robin Dunn
2013-04-01 01:08:14 UTC
Permalink
Post by Robin Dunn
Since you are using the code from github instead of the source snapshot
then you need to also generate the wrapper code, as well as the xml that
python build.py dox etg --nodoc sip build
$ DOXYGEN=/usr/bin/doxygen python build.py dox etg --nodoc sip build
This is doxygen 1.8.1.2 (build.py downloads 1.8.2 x86-64 and I am on x86.)
I am very interested in this project and appreciate any help I can get
to get me started :-)
$ DOXYGEN=/usr/bin/doxygen python build.py dox etg --nodoc sip build
Build using: /usr/bin/python
2.7.3 (default, Sep 26 2012, 21:53:58)
[GCC 4.7.2]
Python's architecture is 32bit
Running command: dox
./regen.sh xml
warning: ignoring unsupported tag `AUTOLINK_SUPPORT =' at line 38, file
Doxyfile
warning: ignoring unsupported tag `HTML_EXTRA_STYLESHEET =' at line 340,
file Doxyfile
Finished command: dox (22.530s)
Running command: etg
/usr/bin/python etg/_xrc.py --sip --nodoc
_getCoreTopLevelNames
IOError: [Errno 2] No such file or directory: 'wx/core.pi'
Command '/usr/bin/python etg/_xrc.py --sip --nodoc' failed with exit code 1.
Finished command: etg (0.407s)
The .pi files are generated as part of the etg command, but there isn't
a lot of dependency checking. You probably have some things that are
partially generated from previous builds. You can force them to be
rebuilt by running:

rm wx/*.pi
python build.py touch etg --nodoc
Post by Robin Dunn
The build stopped with the error below, and I guess that's the things one will experience with master compiles. Well I can get started exploring now, so I will stick to the snapshots to test my application against Phoenix.
../../../sip/cpp/sip_corewxBitmapButton.cpp:444:9: error: ‘OnEnabled’ is not a member of ‘wxBitmapButton’
../../../sip/cpp/sip_corewxBitmapButton.cpp:740:22: error: ‘OnEnabled’ is not a member of ‘wxBitmapButton’
This was fixed last night, but it also requires that all the etg files
be rerun to generate new .sip files without the OnEnabled. So doing the
touch and rebuild as above will take care of this one too.
--
Robin Dunn
Software Craftsman
http://wxPython.org
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Thomas Christensen
2013-04-01 03:30:38 UTC
Permalink
Post by Robin Dunn
The .pi files are generated as part of the etg command, but there isn't
a lot of dependency checking. You probably have some things that are
partially generated from previous builds. You can force them to be
rm wx/*.pi
python build.py touch etg --nodoc
I still get the same result. It seems xrc.pi depends on core.pi which is
not yet processed:

***@incubator_62c5ede2:~/Phoenix$ rm wx/*.pi
***@incubator_62c5ede2:~/Phoenix$ python build.py touch etg --nodoc
Build using: /usr/bin/python
2.7.3 (default, Sep 26 2012, 21:53:58)
[GCC 4.7.2]
Python's architecture is 32bit

Running command: touch
touch etg/*.py
Finished command: touch (0.44s)
Running command: etg
/usr/bin/python etg/_adv.py --sip --nodoc
/usr/bin/python etg/_grid.py --sip --nodoc
/usr/bin/python etg/_xrc.py --sip --nodoc
Traceback (most recent call last):
File "etg/_xrc.py", line 211, in <module>
run()
File "etg/_xrc.py", line 204, in run
tools.runGenerators(module)
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 541, in
runGenerators
g.generate(module)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 46, in
generate
self.generateModule(module, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 137, in
generateModule
self.generateModuleItems(module, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 180, in
generateModuleItems
function(item, stream)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 428, in
generateClass
self.generateDocstring(klass, stream, indent2)
File "/home/thomasc/Phoenix/etgtools/sip_generator.py", line 598, in
generateDocstring
sigs = ctor.collectPySignatures()
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 506, in
collectPySignatures
f.makePyArgsString()
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 485, in
makePyArgsString
s += '=' + '|'.join([_cleanName(x) for x in default.split('|')])
File "/home/thomasc/Phoenix/etgtools/extractors.py", line 431, in
_cleanName
name = self.fixWxPrefix(name, True)
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 89, in
fixWxPrefix
self._getCoreTopLevelNames()
File "/home/thomasc/Phoenix/etgtools/tweaker_tools.py", line 124, in
_getCoreTopLevelNames
with open(filename, 'r') as f:
IOError: [Errno 2] No such file or directory: 'wx/core.pi'
Command '/usr/bin/python etg/_xrc.py --sip --nodoc' failed with exit code 1.
Finished command: etg (1.542s)
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Robin Dunn
2013-04-02 00:42:15 UTC
Permalink
Post by Robin Dunn
The .pi files are generated as part of the etg command, but there isn't
a lot of dependency checking. You probably have some things that are
partially generated from previous builds. You can force them to be
rm wx/*.pi
python build.py touch etg --nodoc
I still get the same result. It seems xrc.pi depends on core.pi which is
Ok. I think it has always run those in alphabetical order for me, I
wonder if glob() in your Python or platform behaves differently. Or
maybe it is just a coincidence that I'm getting the file list in alpha
order, or at least an order that has _core.py near the beginning of the
list... on three platforms and all the buildslaves... Anyway, I'll go
ahead and implement something like your patch.
--
Robin Dunn
Software Craftsman
http://wxPython.org
--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+***@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Continue reading on narkive:
Loading...