- the trunk of phoenix (also 72809):
a) I changed MONOLITHIC to 1 manually in config.py because I
couldn’t find a command line option for it
b) set WXWIN=d:\wxwidgets
c) python_d build.py 3.3 etg sip build_wx --debug --unicode
[…]
sip: wxImageHistogramBase has not been defined
sip: wxList has not been defined
The same with this one. I’ll push all my current changes up to SVN
soon.
Alright, I had to do a few changes.
I updated wxWidgets to 72958 because of issues with wxAppConsole::
Base::SetCLocale() and wxControlBase::DoGetSizeFromTextSize(int, int)
being undefined. I also changed wxUSE_POSTSCRIPT to 1 since
sip_corewxPostScriptDC.cpp was failing because wxPostScriptDC was
undeclared. I then ran
nmake -f makefile.vc
COMPILER_VERSION=110 BUILD=debug SHARED=1 UNICODE=1
MONOLITHIC=1 USE_OPENGL=1 TARGET_CPU=X64 DEBUG_RUNTIME_LIBS=1
Note that I added COMPILER_VERSION=110 so that it corresponds to the
changes below in config.py.
I updated phoenix to 72958 also and had to change:
config.py:186
changed makeLibName('') to self.makeLibName('')
config.py:843
added a case for 'Version 17' to return '110' since I'm using Visual
C++ 2012
etg/_stc.py:36
uncommented DEPENDS and OTHERDEPS
I also had to make sure the CPU environment variable was defined to X64
or the script would try using %WXWIN%/lib/vcFIXME_dll.
I had to clean the sip files because they don’t seem to get rebuilt
automatically. Then I went with
python_d build.py 3.3 dox etg sip setup_py --debug --unicode
Everything went well until linking where various wxGLCanvas and
wxGLCanvasBase member functions were undefined. I had to change
config.py:186 from
self.libs += self.makeLibName('')
to
self.libs += self.makeLibName('') + self.makeLibName('gl')
so that wxmsw29ud_gl.lib got linked in.
The notice when the build is done talks about demo/demo.py, but I
couldn’t find that one.
I tried the simple
import wx
app = wx.App(False)
frame = wxFrame(None, wx.ID_ANY, "Hello World")
frame.Show(True)
app.MainLoop()
but got a crash (backslashes added by me):
siplib_d.pyd!sipIsRangeEnabled(\
_sipExportedModuleDef * em, int range_index) Line 292 C
siplib_d.pyd!sipInitAPI(\
_sipExportedModuleDef * em, _object * mod_dict) Line 158 C
siplib_d.pyd!sip_api_init_module(\
_sipExportedModuleDef * client, _object * mod_dict) Line 1331 C
_core_d.pyd!PyInit__core() Line 18458 C++
The first problem I found was in sip_corecmodule.cpp:18228 in the
definition of sipModuleAPI__core where the value of em_nrtypes was
generated as 543 while typesTable only had 542 elements in it. This
gives me the impression that there’s a fundamental problem with my
build, but I changed it manually to 542 and recompiled.
I then got another crash:
siplib_d.pyd!createClassType(\
_sipExportedModuleDef * client, _sipClassTypeDef * ctd,\
_object * mod_dict) Line 5483 C
siplib_d.pyd!createClassType(\
_sipExportedModuleDef * client, _sipClassTypeDef * ctd,\
_object * mod_dict) Line 5497 C
siplib_d.pyd!createClassType(\
_sipExportedModuleDef * client, _sipClassTypeDef * ctd,\
_object * mod_dict) Line 5497 C
siplib_d.pyd!createClassType(\
_sipExportedModuleDef * client, _sipClassTypeDef * ctd,\
_object * mod_dict) Line 5497 C
siplib_d.pyd!sip_api_init_module(\
_sipExportedModuleDef * client, _object * mod_dict) Line 1420 C
_core_d.pyd!PyInit__core() Line 18458 C++
The crash is on
do
++nrsupers;
while (!sup++->sc_flag); <-
where ‘sup’ was initialized from ctd->ctd_supertype and ctd seems to
be pointing to garbage. However, the ctd pointer in the previous frame
looks fine to me (ctd_docstring is “BoxSizer(orient=HORIZONTAL)…”).
It looks like what getGeneratedType() returned and got passed to
createClassType() was invalid.
This may indicate that things weren’t built properly. Do you have an
idea?
Thanks.
···
On Thursday, November 8, 2012 8:12:58 PM UTC-5, Robin Dunn wrote:
On 10/28/12 12:54 AM, Jonathan McDougall wrote:
–
Jonathan McDougall