[ wxwindows-Bugs-1196162 ] SDL wrongly enabled for wxBase in
monolithic build
SourceForge.net
noreply at sourceforge.net
Sun Apr 1 14:18:29 PDT 2007
Bugs item #1196162, was opened at 2005-05-05 14:05
Message generated for change (Comment added) made by dirtyepic
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=109863&aid=1196162&group_id=9863
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build -- unix
Group: Fatal
Status: Open
Resolution: None
Priority: 3
Private: No
Submitted By: Mikkel S (xaignar)
Assigned to: Nobody/Anonymous (nobody)
Summary: SDL wrongly enabled for wxBase in monolithic build
Initial Comment:
It seems that SDL is enabled when wxGTK-2.6.0 is
compiled with --disable-gui, irregardless of
--without-sdl being used. This causes problems
when attempts are made at linking against the
wxBase library:
/usr/lib/gcc/i386-pc-linux-gnu/3.4.3/../../../libwx_base-2.6.so:
undefined
reference to `wxSoundData::DecRef()'
/usr/lib/gcc/i386-pc-linux-gnu/3.4.3/../../../libwx_base-2.6.so:
undefined
reference to `wxSoundData::IncRef()'
Manually setting wxUSE_LIBSDL to 0 before
compiling wxBAse fixed the issue. More here:
http://bugs.gentoo.org/show_bug.cgi?id=91574
----------------------------------------------------------------------
Comment By: dirtyepic (dirtyepic)
Date: 2007-04-01 15:18
Message:
Logged In: YES
user_id=1415513
Originator: NO
While we don't use --enable-monolithic any more, I've found this bug to be
independent of that option.
libsdl-1.2.11 is installed on the system.
/var/tmp/portage/x11-libs/wxGTK-2.6.3.3-r1/work/wxPython-src-2.6.3.3/configure
--prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
--localstatedir=/var/lib --enable-shared --enable-soname --disable-optimise
--enable-no_deps --disable-rpath --enable-compat24 --with-regex=builtin
--with-zlib=sys --with-expat --without-sdl --without-odbc --disable-gui
--disable-unicode --disable-debug --disable-debug_gdb --libdir=/usr/lib64
--build=x86_64-pc-linux-gnu
[...]
checking for ioctl() in sys/soundcard.h... yes
checking for sdl-config... /usr/bin/sdl-config
checking for SDL - version >= 1.2.0... yes
[...]
Which libraries should wxWidgets use?
jpeg none
png none
regex builtin
tiff none
zlib sys
odbc no
expat sys
libmspack no
sdl
gnomeprint none
hildon none
[...]
./bk-deps x86_64-pc-linux-gnu-g++ -c -o netdll_socket.o
-I.pch/wxprec_netdll -D__WX__
-I/var/tmp/portage/x11-libs/wxGTK-2.6.3.3-r1/work/wxPython-src-2.6.3.3/src/regex
-DwxUSE_GUI=0 -DWXUSINGDLL -DWXMAKINGDLL_NET -fPIC -DPIC -DWX_PRECOMP
-DNO_GCC_PRAGMA -Ilib/wx/include/base-ansi-release-2.6
-I/var/tmp/portage/x11-libs/wxGTK-2.6.3.3-r1/work/wxPython-src-2.6.3.3/include
-D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -O0 -O2 -g -march=nocona
-fomit-frame-pointer -fno-ident -pipe -fno-strict-aliasing -pthread
-I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Wall -Wundef
-Wno-ctor-dtor-privacy
/var/tmp/portage/x11-libs/wxGTK-2.6.3.3-r1/work/wxPython-src-2.6.3.3/src/common/socket.cpp
[etc]
however it is not linked in at the end, so I'm thinking it's harmless.
# ldd /usr/lib64/libwx_base*.so
/usr/lib64/libwx_base-2.6.so:
libz.so.1 => /lib/libz.so.1 (0x00002ba35ded0000)
libdl.so.2 => /lib/libdl.so.2 (0x00002ba35e0e5000)
libstdc++.so.6 =>
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0-pre20070401/libstdc++.so.6
(0x00002ba35e2e9000)
libm.so.6 => /lib/libm.so.6 (0x00002ba35e5e7000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002ba35e83a000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00002ba35ea48000)
libc.so.6 => /lib/libc.so.6 (0x00002ba35ec63000)
/lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
/usr/lib64/libwx_base_net-2.6.so:
libz.so.1 => /lib/libz.so.1 (0x00002b1743c71000)
libdl.so.2 => /lib/libdl.so.2 (0x00002b1743e86000)
libwx_base-2.6.so.0 => /usr/lib/libwx_base-2.6.so.0
(0x00002b174408a000)
libstdc++.so.6 =>
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0-pre20070401/libstdc++.so.6
(0x00002b17443a6000)
libm.so.6 => /lib/libm.so.6 (0x00002b17446a3000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002b17448f6000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00002b1744b05000)
libc.so.6 => /lib/libc.so.6 (0x00002b1744d1f000)
/lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
/usr/lib64/libwx_base_xml-2.6.so:
libz.so.1 => /lib/libz.so.1 (0x00002b117fddd000)
libdl.so.2 => /lib/libdl.so.2 (0x00002b117fff2000)
libwx_base-2.6.so.0 => /usr/lib/libwx_base-2.6.so.0
(0x00002b11801f6000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00002b1180512000)
libstdc++.so.6 =>
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0-pre20070401/libstdc++.so.6
(0x00002b1180736000)
libm.so.6 => /lib/libm.so.6 (0x00002b1180a33000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002b1180c87000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00002b1180e95000)
libc.so.6 => /lib/libc.so.6 (0x00002b11810af000)
/lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
----------------------------------------------------------------------
Comment By: Benoit Hamet (bhamet)
Date: 2006-12-01 05:08
Message:
Logged In: YES
user_id=1440678
Originator: NO
Hi all,
This problem is not specific to gentoo, I just got the 2.6.3 base packages
from here, and still have the problem for compiling with :
make: *** No rule to make target `src/unix/sound_sdl.cpp', needed by
`monodll_sound_sdl.o'. Stop.
The problem is in the configure for this test :
COND_PLATFORM_UNIX_1_USE_PLUGINS_0="#"
if test "x$PLATFORM_UNIX" = "x1" -a "x$USE_PLUGINS" = "x0" ; then
COND_PLATFORM_UNIX_1_USE_PLUGINS_0=""
fi
So getting deeper inside the autoconf stuff I arrive to this 2 conditions
which let me perplexe :
COND_USE_PLUGINS_0="#"
if test "x$USE_PLUGINS" = "x0" ; then
COND_USE_PLUGINS_0=""
fi
AC_SUBST(COND_USE_PLUGINS_0)
and
COND_USE_RTTI_0="#"
if test "x$USE_RTTI" = "x0" ; then
COND_USE_RTTI_0=""
fi
AC_SUBST(COND_USE_RTTI_0)
Which are generated using bakefile If I read the header of the
autoconf_inc.m4 ... And got no idea on how to solve this ... in a good way
...
so I just suggest for people like me trying to compile the wxbase lib to
use :
sed -i 's/"x$USE_PLUGINS" = "x0"/"x$USE_PLUGINS" = "x1"/g' configure
then ./configure --prefix=/tmp/wxwidgets-2.6.3-nogui --enable-monolithic
will produce the right Makefile and the compile will be ok
----------------------------------------------------------------------
Comment By: Vadim Zeitlin (vadz)
Date: 2005-05-22 10:52
Message:
Logged In: YES
user_id=71618
It looks like the problem is specific to
--enable-monolithic, so while it's still a bug it should be
much less important now that Gentoo doesn't use it any
longer (if I udnerstood correctly).
----------------------------------------------------------------------
Comment By: Vaclav Slavik (vaclavslavik)
Date: 2005-05-05 16:01
Message:
Logged In: YES
user_id=80834
Thanks! Gentoo doesn't apply any (relevant) patches, so it's
more likely to be specific to --enable-monolithic --disable-gui
----------------------------------------------------------------------
Comment By: Mikkel S (xaignar)
Date: 2005-05-05 15:55
Message:
Logged In: YES
user_id=799149
--enable-monolithic
--host=i386-pc-linux-gnu --disable-debugreport
--libdir=/usr/lib --prefix=/usr
--infodir=/usr/share/info --mandir=/usr/share/man
--with-zlib --disable-gui --without-odbc
The problem seems to be caused by the
--enable-monolithic flag, at least as far as I can tell from
the gentoo-thread.
I'm afraid that the bug-title is wrong, for atm I am not
sure exactly what is going on here. If this turns out to
be a purely gentoo-specific problem, then I apologize
for wasting your time.
----------------------------------------------------------------------
Comment By: Vaclav Slavik (vaclavslavik)
Date: 2005-05-05 15:21
Message:
Logged In: YES
user_id=80834
What exact command line options did you use? It's not at all
clear from netiher this nor the gentoo bug.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=109863&aid=1196162&group_id=9863
More information about the wx-dev
mailing list