[mythtv-commits] Ticket #2402: qmake build system has bad dependencies which causes --as-needed and future binutils to fail to link

MythTV mythtv at cvs.mythtv.org
Thu Jan 17 16:16:27 UTC 2008


#2402: qmake build system has bad dependencies which causes --as-needed and future
binutils to fail to link
-------------------------------+--------------------------------------------
 Reporter:  cardoe at gentoo.org  |        Owner:  nigel  
     Type:  defect             |       Status:  new    
 Priority:  minor              |    Milestone:  unknown
Component:  mythtv             |      Version:  0.20   
 Severity:  medium             |   Resolution:         
  Mlocked:  0                  |  
-------------------------------+--------------------------------------------
Changes (by candrews at integralblue.com):

  * status:  closed => new
  * resolution:  worksforme =>


Comment:

 I have this line in my /usr/qt/3/mkspecs/linux-g++/qmake.conf file:
 QMAKE_LFLAGS_RELEASE=-Wl,--hash-style=both,-z,relro,--enable-new-
 dtags,-O1,-z,now,--as-needed

 My machine is an AMD64 running GCC 4.2.2, binutils 2.18, and qt 3.3.8.

 When I build mythtv 15429, this is the error I get:
 g++ -c -pipe -fomit-frame-pointer -O3 -Wall -Wno-switch -Wpointer-arith
 -Wredundant-decls -Wno-non-virtual-dtor -D__STDC_CONSTANT_MACROS
 -D_REENTRANT  -DMMX -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr\"
 -DLIBDIR=\"/usr/lib64\" -DUSING_X11 -DUSING_XV -DUSING_IVTV -DUSING_XVMC
 -DUSING_XVMC_VLD -DUSING_XRANDR -DUSING_OPENGL_VSYNC -DUSING_ALSA
 -DUSING_OSS -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED
 -DQT_TABLET_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I. -I/usr/include
 -I/usr/include -I../.. -I../../libs -I../../libs/libmyth
 -I../../libs/libmythtv -I../../libs/libavutil -I../../libs/libavformat
 -I../../libs/libavcodec -I../../libs/libmythupnp -I../../libs/libmythui
 -I../../libs/libmythlivemedia -I/usr/qt/3/include -I/usr/X11R6/include
 -I/usr/X11R6/include -o manualschedule.o manualschedule.cpp
 g++ -c -pipe -fomit-frame-pointer -O3 -Wall -Wno-switch -Wpointer-arith
 -Wredundant-decls -Wno-non-virtual-dtor -D__STDC_CONSTANT_MACROS
 -D_REENTRANT  -DMMX -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr\"
 -DLIBDIR=\"/usr/lib64\" -DUSING_X11 -DUSING_XV -DUSING_IVTV -DUSING_XVMC
 -DUSING_XVMC_VLD -DUSING_XRANDR -DUSING_OPENGL_VSYNC -DUSING_ALSA
 -DUSING_OSS -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED
 -DQT_TABLET_SUPPORT -I/usr/qt/3/mkspecs/linux-g++ -I. -I/usr/include
 -I/usr/include -I../.. -I../../libs -I../../libs/libmyth
 -I../../libs/libmythtv -I../../libs/libavutil -I../../libs/libavformat
 -I../../libs/libavcodec -I../../libs/libmythupnp -I../../libs/libmythui
 -I../../libs/libmythlivemedia -I/usr/qt/3/include -I/usr/X11R6/include
 -I/usr/X11R6/include -o programrecpriority.o programrecpriority.cpp
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `XmlConfiguration::XmlConfiguration(QString const&)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `MythXMLClient::~MythXMLClient()'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to `UPnp::UPnp()'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `SSDPCache::Find(QString const&)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `SSDPCache::Find(QString const&, QString const&)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `MythXMLClient::MythXMLClient(QUrl const&, bool)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnp::SetConfiguration(Configuration*)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnp::Initialize(int, HttpServer*)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnpDeviceDesc::Retrieve(QString&, bool)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnp::g_SSDPCache'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `SSDP::PerformSearch(QString const&)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `HttpServer::HttpServer(int)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnp::g_UPnpDeviceDesc'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `MythXMLClient::GetConnectionInfo(QString const&, DatabaseParams*,
 QString&)'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to
 `UPnp::g_pConfig'
 ../../libs/libmyth/libmyth-0.20.so: undefined reference to `UPnp::g_pSSDP'
 collect2: ld returned 1 exit status
 make[2]: *** [mythtv] Error 1
 make[2]: Leaving directory `/var/tmp/portage/media-
 tv/mythtv-0.21_pre15429/work/mythtv-0.21/programs/mythtv'
 make[1]: *** [sub-mythtv] Error 2
 make[1]: *** Waiting for unfinished jobs....

 If I remove the "--as-needed" from the QMAKE_LDFLAGS_RELEASE line in
 qmake.conf, mythtv builds and runs fine.

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/2402#comment:8>
MythTV <http://svn.mythtv.org/trac>
MythTV


More information about the mythtv-commits mailing list