Summary: | Unable to compile xine_artsplugin with current xine release | ||
---|---|---|---|
Product: | arts | Reporter: | dubious |
Component: | xine_artsplugin | Assignee: | Multimedia Developers <kde-multimedia> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | rdieter, torsten |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
dubious
2003-01-28 22:33:59 UTC
This appears to actually be specifically related to changes in xine-libs since the 1-beta series started. video_out_x11.h doesn't appear to exist at all in the 1-beta2 release. deleting all of xine's files and re-compiling and installing from scratch with 1-beta2 results in configure's "checking for xine > 0.9.9" showing the xine-config "usage" error message (which configure seems to interpret as "yes") and the compile of xine_artsplugin dies complaining of a missing video_out_x11.h Again re-deleting all of xine and compiling and installing a downgrade to 0.9.13 instead allows kdemultimedia-3.1's xine_artsplugin to compile just fine, so the error is entirely related to incompatibility with changes in the 1-beta series of xine-libs... I'm experiencing the same problem. I could solve part of it by using a trick: many compilation errors are due to the use of "this" of argument name in function declaration. A workaround is to use: in audio_fifo_out.h: #define this thisVar #include <xine/audio_out.h> #undef this in xinePlayObject_impl.h: #define this thisVar #include <xine/video_out.h> #undef this However, some functions seem to have been removed in the new API like xine_get_current_time or xine_get_stream_length + some changes in the (still) existing API, like xine_get_status taking xine_stream_t instead ot xine_t. Bye. Michael. kde-3.1 xine-lib-1-beta4 I followed Micheal's directions, changed the two headers, but I got a compile failure later on, about missing video_out_x11.h. I commented out these two line in these two files. video_fifo_out.c:#include <xine/video_out_x11.h> xinePlayObject_impl.h:#include <xine/video_out_x11.h> Again, a compile failure. This one I don't know what to do: --------------------------------------- toshy:root:/opt/kde/src/tmp/kdemultimedia-3.1/xine_artsplugin# make Making all in tools make[1]: Entering directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools' Making all in thumbnail make[2]: Entering directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools/thumbnail' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools/thumbnail' make[2]: Entering directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools' make[2]: Nothing to be done for `all-am'. make[2]: Leaving directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools' make[1]: Leaving directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin/tools' make[1]: Entering directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin' source='xinePlayObject_impl.cpp' object='xinePlayObject_impl.lo' libtool=yes \ depfile='.deps/xinePlayObject_impl.Plo' tmpdepfile='.deps/xinePlayObject_impl.TPlo' \ depmode=gcc3 /bin/sh ../admin/depcomp \ /bin/sh ../libtool --silent --mode=compile --tag=CXX g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde/include/arts -I/opt/kde/include -I/opt/kde/qt/include -I/usr/X11R6/include -I/usr/local/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -c -o xinePlayObject_impl.lo `test -f 'xinePlayObject_impl.cpp' || echo './'`xinePlayObject_impl.cpp cc1plus: warning: changing search order for system directory "/usr/local/include" cc1plus: warning: as it has already been specified as a non-system directory xinePlayObject_impl.cpp: In member function `virtual Arts::poTime xinePlayObject_impl::currentTime()': xinePlayObject_impl.cpp:118: `xine_get_current_time' undeclared (first use this function) xinePlayObject_impl.cpp:118: (Each undeclared identifier is reported only once for each function it appears in.) xinePlayObject_impl.cpp: In member function `virtual Arts::poTime xinePlayObject_impl::overallTime()': xinePlayObject_impl.cpp:132: `xine_get_stream_length' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `virtual Arts::poState xinePlayObject_impl::state()': xinePlayObject_impl.cpp:161: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp:161: `XINE_PLAY' undeclared (first use this function) xinePlayObject_impl.cpp:163: `xine_get_speed' undeclared (first use this function) xinePlayObject_impl.cpp:163: `SPEED_PAUSE' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `virtual long int xinePlayObject_impl::x11Snapshot()': xinePlayObject_impl.cpp:179: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::x11WindowId(long int)': xinePlayObject_impl.cpp:210: `GUI_DATA_EX_DRAWABLE_CHANGED' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::play()': xinePlayObject_impl.cpp:228: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp:232: `SPEED_NORMAL' undeclared (first use this function) xinePlayObject_impl.cpp:232: `xine_set_speed' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::halt()': xinePlayObject_impl.cpp:258: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp:262: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `void xine_stop(xine_stream_t*)' xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::seek(const Arts::poTime&)': xinePlayObject_impl.cpp:277: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp:283: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_play(xine_stream_t*, int, int)' xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::pause()': xinePlayObject_impl.cpp:297: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp: In member function `virtual void xinePlayObject_impl::calculateBlock(long unsigned int)': xinePlayObject_impl.cpp:314: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_get_status(xine_stream_t*)' xinePlayObject_impl.cpp: In member function `void xinePlayObject_impl::playEvent()': xinePlayObject_impl.cpp:364: cannot convert `vo_driver_t*' to `xine_t*' for argument `1' to `void xine_init(xine_t*)' xinePlayObject_impl.cpp:366: `xine_register_event_listener' undeclared (first use this function) xinePlayObject_impl.cpp:367: `xine_select_audio_channel' undeclared (first use this function) xinePlayObject_impl.cpp:368: `xine_select_spu_channel' undeclared (first use this function) xinePlayObject_impl.cpp:370: cannot convert `xine_t*' to `xine_stream_t*' for argument `1' to `int xine_play(xine_stream_t*, int, int)' xinePlayObject_impl.cpp: In member function `void xinePlayObject_impl::stopEvent()': xinePlayObject_impl.cpp:392: `xine_remove_event_listener' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `void xinePlayObject_impl::xineEvent(xine_event_t*)': xinePlayObject_impl.cpp:407: `XINE_EVENT_PLAYBACK_FINISHED' undeclared (first use this function) xinePlayObject_impl.cpp: In member function `void xinePlayObject_impl::eventLoop()': xinePlayObject_impl.cpp:456: `xine_config_file_init' undeclared (first use this function) xinePlayObject_impl.cpp:460: too few arguments to function xinePlayObject_impl.cpp:465: too few arguments to function xinePlayObject_impl.cpp:478: `GUI_DATA_EX_EXPOSE_EVENT' undeclared (first use this function) xinePlayObject_impl.cpp:489: `GUI_DATA_EX_COMPLETION_EVENT' undeclared (first use this function) make[1]: *** [xinePlayObject_impl.lo] Error 1 make[1]: Leaving directory `/opt/src/kde-3.1/src/tmp/kdemultimedia-3.1/xine_artsplugin' make: *** [all-recursive] Error 1 toshy:root:/opt/kde/src/tmp/kdemultimedia-3.1/xine_artsplugin# Support for Xine 1 is added in KDE 3.1.1 and 3.2, I believe. The xine_artsplugin that is included with kdemultimedia-3.5.6 won't compile with xine-lib-1.1.4 using VectorLinux 5.8 (based on Slackware-11.0) and gcc-g++-3.4.6. Here is the terminal output from the make command when it entered the xine_artsplugin directory when built against xine-lib-1.1.4: Making all in xine_artsplugin make[2]: Entering directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin' Making all in tools make[3]: Entering directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools' Making all in thumbnail make[4]: Entering directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools/thumbnail' /usr/lib/qt/bin/moc ./videocreator.h -o videocreator.moc if /bin/sh ../../../libtool --silent --tag=CXX --mode=compile i486-slackware-linux-g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I/opt/kde/include/arts -I/opt/kde/include -I/usr/lib/qt/include -I/usr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -MT videoscaler.lo -MD -MP -MF ".deps/videoscaler.Tpo" -c -o videoscaler.lo videoscaler.cpp; \ then mv -f ".deps/videoscaler.Tpo" ".deps/videoscaler.Plo"; else rm -f ".deps/videoscaler.Tpo"; exit 1; fi if /bin/sh ../../../libtool --silent --tag=CXX --mode=compile i486-slackware-linux-g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I/opt/kde/include/arts -I/opt/kde/include -I/usr/lib/qt/include -I/usr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -MT videocreator.lo -MD -MP -MF ".deps/videocreator.Tpo" -c -o videocreator.lo videocreator.cpp; \ then mv -f ".deps/videocreator.Tpo" ".deps/videocreator.Plo"; else rm -f ".deps/videocreator.Tpo"; exit 1; fi /bin/sh ../../../libtool --silent --tag=CXX --mode=link i486-slackware-linux-g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -o videothumbnail.la -rpath /opt/kde/lib/kde3 -L/opt/kde/lib -L/usr/lib/qt/lib -L/usr/X11R6/lib -module -avoid-version -module -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -R /opt/kde/lib -R /opt/kde/lib -R /usr/lib/qt/lib -R /usr/X11R6/lib -pthread videocreator.lo videoscaler.lo -L/usr/lib -lxine -lz -lnsl -lpthread /usr/lib/libiconv.so -lrt -lkdecore make[4]: Leaving directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools/thumbnail' make[4]: Entering directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools' make[4]: Nothing to be done for `all-am'. make[4]: Leaving directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools' make[3]: Leaving directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin/tools' make[3]: Entering directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin' /opt/kde/bin/mcopidl -I/opt/kde/include/arts ./xinePlayObject.idl /opt/kde/bin/mcopidl -I/opt/kde/include/arts ./xinePlayObject.idl if /bin/sh ../libtool --silent --tag=CC --mode=compile i486-slackware-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde/include/arts -I/opt/kde/include -I/usr/lib/qt/include -I/usr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -U__STRICT_ANSI__ -std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -DNDEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -MT audio_fifo_out.lo -MD -MP -MF ".deps/audio_fifo_out.Tpo" -c -o audio_fifo_out.lo audio_fifo_out.c; \ then mv -f ".deps/audio_fifo_out.Tpo" ".deps/audio_fifo_out.Plo"; else rm -f ".deps/audio_fifo_out.Tpo"; exit 1; fi if /bin/sh ../libtool --silent --tag=CXX --mode=compile i486-slackware-linux-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde/include/arts -I/opt/kde/include -I/usr/lib/qt/include -I/usr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -MT xinePlayObject.lo -MD -MP -MF ".deps/xinePlayObject.Tpo" -c -o xinePlayObject.lo xinePlayObject.cc; \ then mv -f ".deps/xinePlayObject.Tpo" ".deps/xinePlayObject.Plo"; else rm -f ".deps/xinePlayObject.Tpo"; exit 1; fi if /bin/sh ../libtool --silent --tag=CXX --mode=compile i486-slackware-linux-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde/include/arts -I/opt/kde/include -I/usr/lib/qt/include -I/usr/X11R6/include -I/usr/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -MT xinePlayObject_impl.lo -MD -MP -MF ".deps/xinePlayObject_impl.Tpo" -c -o xinePlayObject_impl.lo xinePlayObject_impl.cpp; \ then mv -f ".deps/xinePlayObject_impl.Tpo" ".deps/xinePlayObject_impl.Plo"; else rm -f ".deps/xinePlayObject_impl.Tpo"; exit 1; fi audio_fifo_out.c:103: warning: unused parameter 'this_gen' audio_fifo_out.c:250: warning: unused parameter 'this_gen' audio_fifo_out.c:250: warning: unused parameter 'property' audio_fifo_out.c:245: warning: unused parameter 'this_gen' audio_fifo_out.c:245: warning: unused parameter 'property' /bin/sh ../libtool --silent --tag=CXX --mode=link i486-slackware-linux-g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=i586 -mtune=i686 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -o libarts_xine.la -rpath /opt/kde/lib -L/opt/kde/lib -L/usr/lib/qt/lib -L/usr/X11R6/lib -module -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -pthread xinePlayObject.lo xinePlayObject_impl.lo audio_fifo_out.lo -L/usr/lib -lxine -lz -lnsl -lpthread /usr/lib/libiconv.so -lrt -lX11 -lXext -lkmedia2_idl -lsoundserver_idl -lartsflow .libs/audio_fifo_out.o(.text+0x72d): In function `init_audio_out_plugin': : undefined reference to `ao_new_port' collect2: ld returned 1 exit status make[3]: *** [libarts_xine.la] Error 1 make[3]: Leaving directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/kdemultimedia-3.5.6/xine_artsplugin' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/kdemultimedia-3.5.6' make: *** [all] Error 2 I had to revert to xine-lib-1.1.1 to get the xine_artsplugin to compile successfully. I'm not certain whether this is an issue with kdemultimedia-3.5.6 or with xine-lib-1.1.4. Therefore, I am also reporting this issue at the xine bug tracker. |