pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/41966: x11/qt4-qdbus demands absurd quantities of (v)ram to compile (NetBSD 4/0/i386)



The following reply was made to PR pkg/41966; it has been noted by GNATS.

From: Robert Elz <kre%munnari.OZ.AU@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: pkg/41966: x11/qt4-qdbus demands absurd quantities of (v)ram to 
compile (NetBSD 4/0/i386) 
Date: Mon, 05 Oct 2009 20:20:10 +0700

 Since this has now become considerably more important with the
 import of kde4 which needs it (previously nothing that mattered
 to anything important seemed to care about this), I thought I'd
 see if I could work out how to make it build with some other
 compiler than the "gcc 4.1.2 20061021 prerelease" that is the
 standard compiler in NetBSD 4.0
 
 To do that, I copied (kind of) some stuff from qt3-tools which
 wants a different compiler for sparc - left out the test for
 sparc (which clearly isn't relevant to me, I'm on i386) and as
 I'm not distributing to anything, left out conditional tests
 completely (a genuine fix would probably want to test and only
 do this where needed), but by adding the following 3 lines ...
 
 .include "../../mk/bsd.prefs.mk"
 GCC_REQD+=              3.4
 USE_PKGSRC_GCC=                yes
 
 this package got past its demand for huge memory, and built fine,
 or seemed to (aside from a myriad of warnings, everything completed OK).
 
 I picked gcc34 because it seemed to be the most recent gcc in pkgsrc,
 other than gcc44 which is very new - much newer than qt4-qdbus so I
 assumed it was unlikely to be required.
 
 Unfortunately, when I then attempted to use the qt4-qdbus package that
 just finished building to build sysutils/strigi (one of the packages that
 had been waiting on qt4-qdbus) I get this ...
 
 Linking CXX executable strigiclient
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_ZdlPv%GLIBCXX_3.4@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_ZTVN10__cxxabiv121__vmi_class_type_infoE%CXXABI_1.3@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_ZdaPv%GLIBCXX_3.4@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_Znaj%GLIBCXX_3.4@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_Znwj%GLIBCXX_3.4@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_ZTVN10__cxxabiv120__si_class_type_infoE%CXXABI_1.3@localhost'
 /usr/pkg/qt4/lib/libQtDBus.so: undefined reference to 
`_ZTVN10__cxxabiv117__class_type_infoE%CXXABI_1.3@localhost'
 
 which suggests (to me anyway) that something isn't quite right about the
 qt4-qdbus package I managed to build...   (Everything else which doesn't
 request a specific compiler, which includes qt4-libs, would be using the
 4.1.2 compiler that's NetBSD 4.0's standard cc).
 
 I switched to
 
 GCC_REQD+=              4.4
 
 (leaving the other two lines I added as they were in the earlier test).
 This one also managed to produce a binary package for qt4-dbus without
 notable incident (certainly no memory demands so absurd as to be laughable).
 
 Unfortunately, building sysutils/strigi failed with this one, in seemingly
 the exact same way (including the "GLIBCXX_3.4" strings in the undefined
 symbol names - even though, as best I can tell, nothing ever had gcc3.4
 installed when it was being built in this version - I did verify, just
 by the occasional "ps" while the compile was happening, that gcc34 was being 
 used in the first case above, and gcc44 in the second - I also verified
 that the gcc44 built version of qt4-qdbus was actually what was installed
 when strigi was being compiled).
 
 I am appending all this (apparently useless) information to the original PR
 in the hope that it will supply a hint to someone who actually has a clue
 (which is not I) and lead to a solution to actually building this stuff on
 NetBSD 4.0.
 
 Note, none of these issues seem remotely Qt related - the person with a
 clue probably needs to have gcc &/or toolchain clues, along with how all
 that is made to work in pkgsrc, the Qt stuff just appears to be a trigger,
 especially, as noted in the original PR, qt4-qdbus (same version) did
 actually compile with the NetBSD 4.0 compiler previously - it needed
 recompiling because of the jpeg update inspired revbump, and just for
 that - and failed at that time.  Something else altered between July 10
 (my last successful compile) and Sept 1 (date of the PR, I think I ctually
 detected this failing a little earlier than that.)
 
 kre
 
 ps: it isn't just sysutils/strigi, textproc/sporano generates the same
 messages.  Most likely anything using qt4-qdbus would.
 
 Also, I note that both gcc34 and gcc44 packages include a message indicating
 how they're to be used in pkgsrc in their MESSAGE - and that I didn't do
 what those told me (partly as they seem to require more pkgsrc knowledge
 than I have - qt4-qdbus has no pre-configure for example...) - and because
 qt3-tools (which does have the GCC_REQD+= 3.4 - at least for sparcs - did
 none of that extra stuff anywhere I would see, and I assume it works (no sparc
 here to test on).
 


Home | Main Index | Thread Index | Old Index