[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Wa
From: |
Greg Chicares |
Subject: |
[lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()] |
Date: |
Mon, 20 Mar 2006 15:51:14 +0000 |
User-agent: |
Mozilla Thunderbird 1.0.2 (Windows/20050317) |
On 2006-3-16 22:44 UTC, Evgeniy Tarassov wrote:
>
> Vadim has asked me to check if the tuple
> mpatrol+mingw(gcc3.2.3)+wxWidget2.6.2
> allows to compile lmi.
> It does work with almost no problems/workarounds.
I get errors such as
undefined reference to `wxWindowList::DeleteFunction(wxWindow*)'
undefined reference to `wxMenuItemList::DeleteFunction(wxMenuItem*)'
building code I wrote, and I can reproduce at least the second one
in a wx sample program: see below. No lmi, no mpatrol, just wx-2.6.2
and this old MinGW gcc in MSYS.
> The package versions i've used:
> 1. msys+mingw
> The 'Previous' distribution on the mingw website
> gcc3.2.3, msysDTK1.0.10, MSYS1.0.9, Mingw3.1.0-1
OK, I'm using
http://prdownloads.sourceforge.net/mingw/MinGW-3.1.0-1.exe
same as you; that's gcc-3.2.3 . The MSYS DTK isn't needed, and the
problem I'm reporting should not depend on any particular version
of the shell.
> plus a couple of packages from 'Current' distrubution (because either
> the supplied one with 'Previous' was not functional, or missing)
> wget, msys-autotools, gdb
OK, I'm not actually using any of those to demonstrate this problem.
> 2. wxWidgets2.6.2 ('all ports combined' version)
> when compiling wxWidgets i've used options from README.auto document
> file of lmi.
I downloaded that version:
C:/downloads[0]$md5sum wxWidgets-2.6.2.tar.bz2
ee0aa211febd992c8540e6c9df749b51 wxWidgets-2.6.2.tar.bz2
> 3. mpatrol
> The one described in the INSTALL document of lmi
Not used in demonstrating the 'sample' problem I'm reporting.
Here I cut and paste exactly what I did to reproduce the problem
with the wx menu sample:
/c/wxWidgets-2.6.2/build_3_2_3[0]$../configure --disable-gif --disable-apple_ie
ee --without-libjpeg --without-libtiff --without-regex --enable-monolithic --en
able-shared --disable-threads --enable-stl --enable-std_iostreams --enable-debu
g --enable-commondlg --disable-compat24 CXXFLAGS='-DNO_GCC_PRAGMA' >config_log_
20060320
configure: WARNING: zlib library not found or too old, will use built-in instead
configure: WARNING: system png library not found or too old, will use built-in i
nstead
configure: WARNING: system expat library not found, will use built-in instead
configure: WARNING: ddraw.h or multimon.h not found; disabling wxDisplay
configure: WARNING: ddraw.h or multimon.h not found; disabling wxDisplay
configure: WARNING: Catching fatal exceptions not currently supported on this sy
stem, wxApp::OnFatalException will not be called
/c/wxWidgets-2.6.2/build_3_2_3[0]$make >build_log_20060320 2>build_errors_20060
320
/c/wxWidgets-2.6.2/build_3_2_3[0]$cd samples/menu/
/c/wxWidgets-2.6.2/build_3_2_3/samples/menu[0]$make
../.././bk-deps g++ -c -o menu_menu.o -D__WXMSW__ -I../../../samples/menu -D
WXUSINGDLL -I../../../samples/menu/../../samples -DNO_GCC_PRAGMA -D__WXDEBUG__ -
I../../lib/wx/include/msw-ansi-debug-2.6 -I../../../include -g -O0 -DNO_GCC_PRAG
MA -Wall -Wundef -Wno-ctor-dtor-privacy ../../../samples/menu/menu.cpp
windres -i../../../samples/menu/menu.rc -omenu_menu_rc.o --define __WXMSW__
--include-dir ../../../samples/menu --define WXUSINGDLL --include-dir ../..
/../samples/menu/../../samples --include-dir ../../../include
g++ -o menu.exe menu_menu.o menu_menu_rc.o -L../../lib -mwindows -lwx_
mswd-2.6 -lwxpngd-2.6 -lwxzlibd-2.6 -lwxexpatd-2.6 -Wl,--version-script,../.
./version-script -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool -lwinmm -lshell32
-lcomctl32 -lcomdlg32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32
menu_menu.o(.text$_ZN14wxMenuItemList5ClearEv+0x13): In function `ZNK10wxFontBas
e17GetNoAntiAliasingEv':
c:/wxWidgets-2.6.2/build_3_2_3/samples/menu/../../../include/wx/font.h: undefine
d reference to `wxMenuItemList::DeleteFunction(wxMenuItem*)'
make: *** [menu.exe] Error 1
/c/wxWidgets-2.6.2/build_3_2_3/samples/menu[2]$
Do you get the same result? Oh...look at this...it happens with
even the minimal sample:
/c/wxWidgets-2.6.2/build_3_2_3/samples/menu[2]$cd ../minimal/
/c/wxWidgets-2.6.2/build_3_2_3/samples/minimal[0]$make
windres -i../../../samples/minimal/../../samples/sample.rc -ominimal_sample_rc.o
--define __WXMSW__ --include-dir ../../../samples/minimal --define WXU
SINGDLL --include-dir ../../../samples/minimal/../../samples --include-dir ../..
/../include
../.././bk-deps g++ -c -o minimal_minimal.o -D__WXMSW__ -I../../../samples/m
inimal -DWXUSINGDLL -I../../../samples/minimal/../../samples -DNO_GCC_PRAGMA -D_
_WXDEBUG__ -I../../lib/wx/include/msw-ansi-debug-2.6 -I../../../include -g -O0 -
DNO_GCC_PRAGMA -Wall -Wundef -Wno-ctor-dtor-privacy ../../../samples/minimal/min
imal.cpp
g++ -o minimal.exe minimal_sample_rc.o minimal_minimal.o -L../../lib -mwindo
ws -lwx_mswd-2.6 -lwxpngd-2.6 -lwxzlibd-2.6 -lwxexpatd-2.6 -Wl,--versi
on-script,../../version-script -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool -lw
inmm -lshell32 -lcomctl32 -lcomdlg32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32
minimal_minimal.o(.text$_ZN14wxMenuItemList5ClearEv+0x13): In function `ZNK7MyFr
ame17GetEventHashTableEv':
c:/wxWidgets-2.6.2/build_3_2_3/samples/minimal/../../../samples/minimal/minimal.
cpp:99: undefined reference to `wxMenuItemList::DeleteFunction(wxMenuItem*)'
make: *** [minimal.exe] Error 1
/c/wxWidgets-2.6.2/build_3_2_3/samples/minimal[2]$
I have another 2.6.2 build (which uses a different gcc version) in
another directory, '/c/wxWidgets-2.6.2/build_3_4_2/', and I did
'make install' with that other build. But I don't see how that can
cause this problem. Reformatting the above linker command for clarity:
g++ -o minimal.exe minimal_sample_rc.o minimal_minimal.o
-L../../lib -mwindows
-lwx_mswd-2.6 -lwxpngd-2.6 -lwxzlibd-2.6 -lwxexpatd-2.6
-Wl,--version-script,../../version-script
-lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool -lwinmm -lshell32
-lcomctl32 -lcomdlg32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32
The only library search path is '-L../../lib', so no other build
should interfere, right?
I haven't modified the wx-2.6.2 sources except to remove five
stray semicolons:
http://lists.gnu.org/archive/html/lmi/2006-03/msg00022.html
http://lists.gnu.org/archive/html/lmi/2006-03/msg00023.html
No, wait--I didn't even do that in '/c/wxWidgets-2.6.2/'; I
did it only in the copy I installed in '/usr/local/include'.
- [lmi] wx segfault iterating on GetChildren(), Greg Chicares, 2006/03/11
- Re: [lmi] wx segfault iterating on GetChildren(), Vadim Zeitlin, 2006/03/11
- Message not available
- Message not available
- Message not available
- Message not available
- Re: [lmi] wx segfault iterating on GetChildren(), Greg Chicares, 2006/03/12
- Re: [lmi] wx segfault iterating on GetChildren(), Greg Chicares, 2006/03/12
- Re: [lmi] wx segfault iterating on GetChildren(), Evgeniy Tarassov, 2006/03/16
- Re: [lmi] wx segfault iterating on GetChildren(), Greg Chicares, 2006/03/16
- Old libstdc++ problem with 'alert.cpp' [Was: [lmi] wx segfault iterating on GetChildren()], Greg Chicares, 2006/03/17
- [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()],
Greg Chicares <=
- Re: [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()], Evgeniy Tarassov, 2006/03/22
- Re[2]: [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()], Vadim Zeitlin, 2006/03/22
- Re: [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()], Greg Chicares, 2006/03/22
- [lmi] Don't do that! [Was: Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3], Greg Chicares, 2006/03/27
- Re: Re[2]: [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()], Evgeniy Tarassov, 2006/03/22
- Re[4]: [lmi] Failure linking sample programs: wx-2.6.2 with MinGW gcc-3.2.3 [Was: wx segfault iterating on GetChildren()], Vadim Zeitlin, 2006/03/22
- Re[2]: [lmi] wx segfault iterating on GetChildren(), Vadim Zeitlin, 2006/03/21
Determine whether window created yet [Was: [lmi] wx segfault iterating on GetChildren()], Greg Chicares, 2006/03/11