Opened 11 years ago

Closed 11 years ago

#6112 closed defect (fixed)

Unable to compile trunk since mythtv-pip branch was merged into trunk. (videoout_xv.cpp)

Reported by: anonymous Owned by: Isaac Richards
Priority: critical Milestone: unknown
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

I think since the Mythtv-PIP was merged into trunk, I cannot seem to compile mythtv from trunk anymore. I am using the latest Mesa and libdrm from the git repository and I get the following errors.

ake[2]: Entering directory `/tmp/mythtv-trunk/libs/libmythtv' g++ -c -pipe -march=barcelona -fomit-frame-pointer -O3 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wno-non-virtual-dtor -funit-at-a-time -DSTDC_CONSTANT_MACROS -I/usr/include/freetype2 -D_REENTRANT -DPIC -fPIC -DMMX -Di386 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DUSING_OSS -DUSING_X11 -DUSING_XV -DUSING_XVMC -DUSING_XVMCW -DUSING_XVMC_VLD -DUSING_MHEG -DUSING_FRONTEND -DUSING_FFMPEG_THREADS -DUSING_V4L -DUSING_IVTV -DUSING_HDPVR -DUSING_DVB -DUSING_BACKEND -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/qt/mkspecs/linux-g++ -I. -I/usr/lib/qt/include/QtCore -I/usr/lib/qt/include/QtCore -I/usr/lib/qt/include/QtNetwork -I/usr/lib/qt/include/QtNetwork -I/usr/lib/qt/include/QtGui -I/usr/lib/qt/include/QtGui -I/usr/lib/qt/include/QtXml -I/usr/lib/qt/include/QtXml -I/usr/lib/qt/include/QtSql -I/usr/lib/qt/include/QtSql -I/usr/lib/qt/include -I/opt/mythtv/include -I/usr/X11/include -I../.. -I.. -I. -I../libmyth -I../libavcodec -I../libavutil -I../libmythmpeg2 -Idvbdev -Impeg -Iiptv -I../libmythlivemedia/BasicUsageEnvironment/include -I../libmythlivemedia/groupsock/include -I../libmythlivemedia/liveMedia/include -I../libmythlivemedia/UsageEnvironment/include -I../libmythdb -I../libmythui -I/usr/include -I. -I. -o videoout_xv.o videoout_xv.cpp In file included from videoout_xv.cpp:60: openglcontext.h:284: error: expected ',' or '...' before '&' token openglcontext.h:284: error: ISO C++ forbids declaration of 'Rect' with no type videoout_xv.cpp: In destructor 'virtual VideoOutputXv::~VideoOutputXv?()': videoout_xv.cpp:239: warning: possible problem detected in invocation of delete operator: videoout_xv.cpp:239: warning: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: warning: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:239: note: neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined. videoout_xv.cpp: In member function 'virtual void VideoOutputXv::MoveResize?()': videoout_xv.cpp:293: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'bool VideoOutputXv::InitOSD(const QString&)': videoout_xv.cpp:1704: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp:1713: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect, QRect, QRect, bool, QString, bool)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp: In member function 'bool VideoOutputXv::SetDeinterlacingEnabledOpenGL(bool)': videoout_xv.cpp:2148: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'bool VideoOutputXv::SetupDeinterlaceOpenGL(bool, const QString&)': videoout_xv.cpp:2186: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'void VideoOutputXv::DeleteBuffers?(VOSType, bool)': videoout_xv.cpp:2785: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:2805: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:2806: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'void VideoOutputXv::PrepareFrameOpenGL(VideoFrame?*, FrameScanType?)': videoout_xv.cpp:3207: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp:3235: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::Show(FrameScanType?)': videoout_xv.cpp:3643: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::ShowPIP(VideoFrame?*, NuppelVideoPlayer?*, PIPLocation)': videoout_xv.cpp:3717: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect&, QRect&, QRect, bool, QString)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp:3738: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect&, QRect&, QRect, bool, QString)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp: In member function 'virtual void VideoOutputXv::RemovePIP(NuppelVideoPlayer?*)': videoout_xv.cpp:3767: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'void VideoOutputXv::ProcessFrameOpenGL(VideoFrame?*, OSD*, FilterChain?*, const PIPMap&)': videoout_xv.cpp:4349: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'virtual int VideoOutputXv::SetPictureAttribute?(PictureAttribute?, int)': videoout_xv.cpp:4481: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::InitPictureAttributes?()': videoout_xv.cpp:4552: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' make[2]: * [videoout_xv.o] Error 1 make[2]: Leaving directory `/tmp/mythtv-trunk/libs/libmythtv'

Any ideas on how to fix this?

Change History (2)

comment:1 Changed 11 years ago by anonymous

It seemed that my copy/paste didn't work out. Here it is again.

make[2]: Entering directory `/tmp/mythtv-trunk/libs/libmythtv' g++ -c -pipe -march=barcelona -fomit-frame-pointer -O3 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wno-non-virtual-dtor -funit-at-a-time -DSTDC_CONSTANT_MACROS -I/usr/include/freetype2 -D_REENTRANT -DPIC -fPIC -DMMX -Di386 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DUSING_OSS -DUSING_X11 -DUSING_XV -DUSING_XVMC -DUSING_XVMCW -DUSING_XVMC_VLD -DUSING_MHEG -DUSING_FRONTEND -DUSING_FFMPEG_THREADS -DUSING_V4L -DUSING_IVTV -DUSING_HDPVR -DUSING_DVB -DUSING_BACKEND -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/qt/mkspecs/linux-g++ -I. -I/usr/lib/qt/include/QtCore -I/usr/lib/qt/include/QtCore -I/usr/lib/qt/include/QtNetwork -I/usr/lib/qt/include/QtNetwork -I/usr/lib/qt/include/QtGui -I/usr/lib/qt/include/QtGui -I/usr/lib/qt/include/QtXml -I/usr/lib/qt/include/QtXml -I/usr/lib/qt/include/QtSql -I/usr/lib/qt/include/QtSql -I/usr/lib/qt/include -I/opt/mythtv/include -I/usr/X11/include -I../.. -I.. -I. -I../libmyth -I../libavcodec -I../libavutil -I../libmythmpeg2 -Idvbdev -Impeg -Iiptv -I../libmythlivemedia/BasicUsageEnvironment/include -I../libmythlivemedia/groupsock/include -I../libmythlivemedia/liveMedia/include -I../libmythlivemedia/UsageEnvironment/include -I../libmythdb -I../libmythui -I/usr/include -I. -I. -o videoout_xv.o videoout_xv.cpp In file included from videoout_xv.cpp:60:

openglcontext.h:284: error: expected ',' or '...' before '&' token openglcontext.h:284: error: ISO C++ forbids declaration of 'Rect' with no type videoout_xv.cpp: In destructor 'virtual VideoOutputXv::~VideoOutputXv?()': videoout_xv.cpp:239: warning: possible problem detected in invocation of delete operator: videoout_xv.cpp:239: warning: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: warning: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:239: note: neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined. videoout_xv.cpp: In member function 'virtual void VideoOutputXv::MoveResize?()': videoout_xv.cpp:293: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker (OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'bool VideoOutputXv::InitOSD(const QString&)': videoout_xv.cpp:1704: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp:1713: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect, QRect, QRect, bool, QString, bool)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp: In member function 'bool VideoOutputXv::SetDeinterlacingEnabledOpenGL(bool)': videoout_xv.cpp:2156: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'bool VideoOutputXv::SetupDeinterlaceOpenGL(bool, const QString&)': videoout_xv.cpp:2194: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'void VideoOutputXv::DeleteBuffers?(VOSType, bool)': videoout_xv.cpp:2793: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:2813: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp:2814: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'void VideoOutputXv::PrepareFrameOpenGL(VideoFrame?*, FrameScanType?)': videoout_xv.cpp:3215: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp:3243: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::Show(FrameScanType?)': videoout_xv.cpp:3651: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::ShowPIP(VideoFrame?*, NuppelVideoPlayer?*, PIPLocation)': videoout_xv.cpp:3725: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect&, QRect&, QRect, bool, QString)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp:3746: error: no matching function for call to 'OpenGLVideo::Init(OpenGLContextGLX*&, bool&, QSize, QRect&, QRect&, QRect, bool, QString)' openglvideo.h:155: note: candidates are: bool OpenGLVideo::Init(OpenGLContext*, bool, QSize, QRect, QRect, QRect, bool, QString, bool, LetterBoxColour?) videoout_xv.cpp: In member function 'virtual void VideoOutputXv::RemovePIP(NuppelVideoPlayer?*)': videoout_xv.cpp:3775: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'void VideoOutputXv::ProcessFrameOpenGL(VideoFrame?*, OSD*, FilterChain?*, const PIPMap&)': videoout_xv.cpp:4359: error: no matching function for call to 'OpenGLContextLocker::OpenGLContextLocker(OpenGLContextGLX*&)' openglcontext.h:67: note: candidates are: OpenGLContextLocker::OpenGLContextLocker(OpenGLContext*) openglcontext.h:65: note: OpenGLContextLocker::OpenGLContextLocker(const OpenGLContextLocker&) videoout_xv.cpp: In member function 'virtual int VideoOutputXv::SetPictureAttribute?(PictureAttribute?, int)': videoout_xv.cpp:4491: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' videoout_xv.cpp: In member function 'virtual void VideoOutputXv::InitPictureAttributes?()': videoout_xv.cpp:4562: error: invalid use of incomplete type 'struct OpenGLContextGLX' videooutbase.h:31: error: forward declaration of 'struct OpenGLContextGLX' make[2]: * [videoout_xv.o] Error 1

comment:2 Changed 11 years ago by markk

Resolution: fixed
Status: newclosed

(In [19683]) Closes #6112. Fix compilation for systems with broken (or non-existent) OpenGL installations.

Note: See TracTickets for help on using tickets.