[Clfs-dev] CBLFS -- wxWidgets-2.8.9 -- compile problem?

db m myheadblewoff at hotmail.com
Tue Oct 7 06:25:43 PDT 2008


Greets,

Relative to CLFS-1.1.0 x86_64 multilib.....

The 32bit build works fine, but the 64bit (and I'll suspect n32 as well) breaks.

After a bit of dissecting, it appears the configure time switch  '--libdir= ' is 
somehow causing things to go awry.....

-----

32bit;

make[1]: Entering directory `/usr/local/wxWidgets-2.8.9/utils/wxrc'             
/usr/local/wxWidgets-2.8.9/bk-deps g++ -m32 -c -o wxrc_wxrc.o -D__WXGTK__     -I
. -DWXUSINGDLL -DwxUSE_GUI=0 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/usr/local/
wxWidgets-2.8.9/lib/wx/include/gtk2-ansi-release-2.8 -I../../include -pthread -I
/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/in
clude/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0
/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-
1 -DWX_PRECOMP -pthread -Wall -Wundef -Wno-ctor-dtor-privacy -O2 -fno-strict-ali
asing ./wxrc.cpp                                                                
g++ -m32 -o wxrc wxrc_wxrc.o -pthread     -L/usr/local/wxWidgets-2.8.9/lib   -lz
 -ldl -lm -lwx_base_xml-2.8 -lexpat -lwx_base-2.8       -pthread  -Wl,--version-
script,/usr/local/wxWidgets-2.8.9/version-script -lz -ldl -lm                   
make[1]: Leaving directory `/usr/local/wxWidgets-2.8.9/utils/wxrc'

(end of successful build)

-----

64bit;

make[1]: Entering directory `/usr/local/wxWidgets-2.8.9/utils/wxrc'         
/usr/local/wxWidgets-2.8.9/bk-deps g++ -m64 -c -o wxrc_wxrc.o -D__WXGTK__   
  -I. -DWXUSINGDLL -DwxUSE_GUI=0 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/usr/lo
cal/wxWidgets-2.8.9/lib/wx/include/gtk2-ansi-release-2.8 -I../../include -pt
hread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0
 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/li
b64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/inc
lude/pixman-1 -DWX_PRECOMP -pthread -Wall -Wundef -Wno-ctor-dtor-privacy -O2 -fn
o-strict-aliasing ./wxrc.cpp                                                    
g++ -m64 -o wxrc wxrc_wxrc.o -pthread   -L/usr/lib64     -L/usr/local/wxWidg
ets-2.8.9/lib   -lz -ldl -lm -lwx_base_xml-2.8 -lexpat -lwx_base-2.8       -pthr
ead   -L/usr/lib64  -Wl,--version-script,/usr/local/wxWidgets-2.8.9/version-
script -lz -ldl -lm                                                             
wxrc_wxrc.o: In function `ArrayOfXRCWidgetData::Insert(XRCWidgetData const&, uns
igned long, unsigned long)':                                                    
wxrc.cpp:(.text+0x2eb): undefined reference to `wxBaseArrayPtrVoid::Insert(void 
const*, unsigned long, unsigned long)'                                          
wxrc_wxrc.o: In function `ArrayOfXRCWidgetData::Add(XRCWidgetData const&, unsign
ed long)':...

....<snip>....

wxrc.cpp:(.text._ZN15XRCWndClassData18GenerateHeaderCodeER7wxFFile[XRCWndClassDa
ta::GenerateHeaderCode(wxFFile&)]+0x742): undefined reference to `wxStringBase::
InitWith(char const*, unsigned long, unsigned long)'                            
wxrc.cpp:(.text._ZN15XRCWndClassData18GenerateHeaderCodeER7wxFFile[XRCWndClassDa
ta::GenerateHeaderCode(wxFFile&)]+0x7de): undefined reference to `wxStringBase::
InitWith(char const*, unsigned long, unsigned long)'                            
collect2: ld returned 1 exit status                                             
make[1]: *** [wxrc] Error 1                                                     
make[1]: Leaving directory `/usr/local/wxWidgets-2.8.9/utils/wxrc'          
make: *** [wxrc] Error 2

-----

Apparently, the  '--libdir=/usr/lib64'  switch issued at configure time, gets parsed into the
makefiles as part of variable  LDFLAGS , and as this precedes the actual linktime library
path we want   ( -L/usr/local/src/wxWidgets-2.8.9/lib ), ld fails to find the libraries we're
trying to link 'wxrc' to.....or such and similar.

I don't seem to recall this happening with wxWidget-2.8.8 so perhaps something has changed?

Not sure if it's me, or something else...nor even how to fix it, but there it is....

Manually editted the offending LDFLAGS entry from the wxrc makefile and the problem
goes away.....perhaps someone wiser than myself could look into this one?


Regards,

Don

_________________________________________________________________

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clfs.org/pipermail/clfs-dev-clfs.org/attachments/20081007/d2f65ea3/attachment.html>


More information about the Clfs-dev mailing list