build fails with wxwidgets version 2.4.2 (on Fedora Core 4)
Problem description:
When building VLC configured with: ./configure --enable-livedotcom --with-livedotcom-tree=../live --disable-mkv --disable-speex --disable-hd1000v --disable-daap --disable-bonjour --enable-dvdnav --enable-dvdread --disable-hal
The compilation of file open.cpp fails with the errors:
if g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -DSYS_LINUX -I../../../include
top_builddir="../../.." ../../../vlc-config --cxxflags plugin wxwidgets
-Wsign-compare -Wsign-compare -Wall -pipe -MT libwxwidgets_plugin_a-open.o -MD
-MP -MF ".deps/libwxwidgets_plugin_a-open.Tpo" -c -o
libwxwidgets_plugin_a-open.o test -f 'open.cpp' || echo './'open.cpp;
then mv -f ".deps/libwxwidgets_plugin_a-open.Tpo"
".deps/libwxwidgets_plugin_a-open.Po"; else rm -f
".deps/libwxwidgets_plugin_a-open.Tpo"; exit 1; fi
open.cpp: In function ‘char* ProbeDVD(const wxChar*)’:
open.cpp:1337: error: request for member ‘data’ in ‘tmp_buf’, which is of
non-class type ‘const wxChar*’
open.cpp: In function ‘char* ProbeCDDA(const wxChar*)’:
open.cpp:1407: error: request for member ‘data’ in ‘tmp_buf’, which is of
non-class type ‘const wxChar*’
open.cpp: In function ‘char* ProbeVCD(const wxChar*)’:
open.cpp:1420: error: request for member ‘data’ in ‘tmp_buf’, which is of
non-class type ‘const wxChar*’
/usr/include/wx/event.h: At global scope:
/usr/include/wx/event.h:1949: warning: inline function
‘wxEventTableEntry::wxEventTableEntry(const wxEventTableEntry&)’ used but never
defined
The rest of vlc builds fine (tested with 'make -i').
Analysis:
A version built against wxwidget 2.6.2 seems to build fine: http://stentz.freshrpms.net/rpm.html?id=688. This package seems to be built from clean source (0.8.4) and nothing special in the configuration. So the only difference seems to be the wxwidgets version.
Proposed solution:
Check if trivially fixable or (re)bump wxwidget requirement in configure.ac (which is currently 2.3.0+).
I say (re)bump because this was done before: http://trac.videolan.org/vlc/changeset/12788 wxwidget required version from 2.3.0+ to 2.6.0+ (Jean-Paul Saman) http://trac.videolan.org/vlc/changeset/12797: wxwidget required version from 2.6.0+ to 2.3.0+ (Gildas Bazin)
Additional information:
Up-to-date system with Fedora Core 4 and all updates installed. GCC/G++ version 4.0.2-8.fc4 (very recently updated by Fedora)
------- Additional Comment #1 (closed) From Bas Mevissen 2005-11-30 02:53 -------
Fixed component selection. Version should read 0.8.4, but is not available yet.
------- Additional Comment #2 (closed) From Bas Mevissen 2005-12-01 14:32 -------
Now compiled VLC against wxwidget 2.6.2 (custom build, installed out-of-tree) and it builds and works fine.
So this confirms my assumption.