Hi Toni, After some adventures with getting scons configured, I no longer get errors concerning LIRC. I actually installed LIRC before playing with scons, but that didn't help. Once I ran a scons build the LIRC errors vanished. The next set of errors regards ALSA (which is definitely installed: alsa-lib-1.0.9rc4), so hopefully someone else will have something to contribute:
g++ -DHAVE_LIRC -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/freetype2/config -DHAVE_ALSA -DHAVE_LADSPA -DHAVE_LIBLO -DHAVE_LIBLRDF -DHAVE_XFT -DQT_THREAD_SUPPORT -DVERSION=\"4-1.1_cvs\" -I/usr/include/kde/ -I/usr/lib/qt-3.3/include/ -DHAVE_LIRC -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/freetype2/config -DHAVE_ALSA -DHAVE_LADSPA -DHAVE_LIBLO -DHAVE_LIBLRDF -DHAVE_XFT -O2 -DNDEBUG -DNO_DEBUG -Ibase -Igui -I. -Isound -c -o sound/AlsaDriver.o sound/AlsaDriver.cpp sound/AlsaDriver.cpp: In member function ‘virtual Rosegarden::MappedComposition* Rosegarden::AlsaDriver::getMappedComposition()’: sound/AlsaDriver.cpp:2373: error: invalid use of undefined type ‘struct Rosegarden::ExternalTransport’ sound/SoundDriver.h:137: error: forward declaration of ‘struct Rosegarden::ExternalTransport’ sound/AlsaDriver.cpp:2373: error: incomplete type ‘Rosegarden::ExternalTransport’ used in nested name specifier sound/AlsaDriver.cpp: In member function ‘void Rosegarden::AlsaDriver::handleMTCQFrame(unsigned int, Rosegarden::RealTime)’: sound/AlsaDriver.cpp:2535: error: invalid use of undefined type ‘struct Rosegarden::ExternalTransport’ sound/SoundDriver.h:137: error: forward declaration of ‘struct Rosegarden::ExternalTransport’ sound/AlsaDriver.cpp:2536: error: incomplete type ‘Rosegarden::ExternalTransport’ used in nested name specifier sound/AlsaDriver.cpp: In member function ‘bool Rosegarden::AlsaDriver::testForMTCSysex(const snd_seq_event_t*)’: sound/AlsaDriver.cpp:2761: error: invalid use of undefined type ‘struct Rosegarden::ExternalTransport’ sound/SoundDriver.h:137: error: forward declaration of ‘struct Rosegarden::ExternalTransport’ sound/AlsaDriver.cpp:2762: error: incomplete type ‘Rosegarden::ExternalTransport’ used in nested name specifier sound/AlsaDriver.cpp: In member function ‘bool Rosegarden::AlsaDriver::testForMMCSysex(const snd_seq_event_t*)’: sound/AlsaDriver.cpp:2871: error: invalid use of undefined type ‘struct Rosegarden::ExternalTransport’ sound/SoundDriver.h:137: error: forward declaration of ‘struct Rosegarden::ExternalTransport’ sound/AlsaDriver.cpp:2871: error: incomplete type ‘Rosegarden::ExternalTransport’ used in nested name specifier sound/AlsaDriver.cpp:2876: error: invalid use of undefined type ‘struct Rosegarden::ExternalTransport’ sound/SoundDriver.h:137: error: forward declaration of ‘struct Rosegarden::ExternalTransport’ sound/AlsaDriver.cpp:2876: error: incomplete type ‘Rosegarden::ExternalTransport’ used in nested name specifier Larry On Tue, 2005-05-24 at 21:36 +0200, Toni Arnold wrote: > After checking at home and to put it in one sentece: > It seems to me that qt creates and compiles lirccommander.moc.cpp although > there is no > #ifdef HAVE_LIRC on your environment. > and nobody told your build scripts about the two new classes. > > I obviously misleadingly thought that it would be safe to surround anything > in > a contribution with > #ifdef SoWasBraauchtDochEhNiemand... > would be save in any build environment. I seems that I was wrong. Sorry for > the trouble. > > However, I was now able to reproduce some similar error message from gcc. > Your gcc 4.x build errors started with: > >lirccommander.moc.cpp:22: error: ?LircCommander? has not been declared. > > On my gcc 3.3.5.20050130-r1, the intentionally provoked error messages start > exactly at the sime line, but are somehow different (and semantically less > intuitive -> I will *like* gcc 4, "syntax error" reminds me on commodore 128 > basic, long, long time ago, uuh, I was so young then): > > g++ -I/usr/include/alsa -I/usr/include/freetype2 > -I/usr/include/freetype2/config -DHAVE_ALSA -DHAVE_LIBJACK > -DHAVE_LADSPA -DHAVE_LIBMAD -DHAVE_LIBLRDF -DHAVE_XFT -DQT_THREAD_SUPPORT > -DVERSION=\"4-1.1_cvs\" > -I/usr/kde/3.3/include/ -I/usr/qt/3/include/ -I/usr/include/alsa > -I/usr/include/freetype2 > -I/usr/include/freetype2/config -DHAVE_ALSA -DHAVE_LIBJACK -DHAVE_LADSPA > -DHAVE_LIBMAD -DHAVE_LIBLRDF > -DHAVE_XFT -DDEBUG -g -I/usr/X11R6/include/X11/Xft -I/usr/include/freetype2 > -Ibase -Isound -I. -Igui -c -o > gui/lircclient_moc.o gui/lircclient_moc.cpp > gui/lircclient_moc.cpp:22: error: syntax error before `::' token > gui/lircclient_moc.cpp:27: error: syntax error before `::' token > gui/lircclient_moc.cpp:28: error: `LircClient' was not declared in this scope > gui/lircclient_moc.cpp:28: error: parse error before `::' token > gui/lircclient_moc.cpp:31: error: syntax error before `::' token > gui/lircclient_moc.cpp:39: error: syntax error before `::' token > gui/lircclient_moc.cpp:50: error: syntax error before `::' token > gui/lircclient_moc.cpp:66: error: ISO C++ forbids declaration of `metaObj' > with > no type > gui/lircclient_moc.cpp:74: error: invalid conversion from `QMetaObject*' to ` > int' > gui/lircclient_moc.cpp:75: error: syntax error before `.' token > gui/lircclient_moc.cpp:79: error: syntax error before `::' token > gui/lircclient_moc.cpp:90: error: syntax error before `::' token > gui/lircclient_moc.cpp:94: error: `staticMetaObject' was not declared in this > scope > gui/lircclient_moc.cpp:94: error: `receivers' was not declared in this scope > gui/lircclient_moc.cpp:95: error: parse error before `if' > gui/lircclient_moc.cpp:98: error: syntax error before `.' token > gui/lircclient_moc.cpp:99: error: ISO C++ forbids declaration of ` > activate_signal' with no type > gui/lircclient_moc.cpp:99: error: initializer list being treated as compound > expression > gui/lircclient_moc.cpp:99: error: invalid conversion from `QUObject*' to `int' > gui/lircclient_moc.cpp:100: error: parse error before `}' token > gui/lircclient_moc.cpp:102: error: syntax error before `::' token > gui/lircclient_moc.cpp:112: error: syntax error before `::' token > gui/lircclient_moc.cpp:123: error: syntax error before `::' token > gui/lircclient_moc.cpp:128: error: syntax error before `::' token > scons: *** [gui/lircclient_moc.o] Error 1 > scons: building terminated because of errors. > > > The error production algorithm on top of a working current scons build goes > like this: > > These are the last 3 lines of my /rosegarden/cache/kde.cache.py:24 under > normal circumstances (LIRC present, everything working to my exaltation): > > OPTLIB_CCFLAGS = '-DHAVE_LIRC' > OPTLIB_LDFLAGS = '-llirc_client' > LIRC_SOURCES = 2 > > (letting aside that /rosegarden/scons_admin/kde.py:420 reads > "env.Append(LIRC_SOURCES = 1)" ??) > > I then commented out what triggers #HAVE_LIRC and linking, but left what > triggers the qt sources list: > > #OPTLIB_CCFLAGS = '-DHAVE_LIRC' > #OPTLIB_LDFLAGS = '-llirc_client' > LIRC_SOURCES = 2 > > This is +- equivalent (?) to the line in my qtlirc.pro qmake project from > which I derived my contribution: > > SOURCES += apparat.cpp LircClient.cpp main.cpp panel.cpp LircCommander.cpp > > What happens in the scons build is this (/rosegarden/gui/Sconscript): > if myenv.has_key('LIRC_SOURCES'): # <-- succeeds! > rgSources += lircSources > > -> lircclient_moc.cpp is compiled in and finds no LircClient because it is > deliberately #ifdef-ed out. > > => It seems that there *is* really a problem with "automtaically creating > *_moc.cpp" from unknown .cpp sources found on the filesystem". But I don't > know what to do to avoid that. Can somebody help? I will probably have time > over the weekend to really try out. > > Regards > Toni ------------------------------------------------------- This SF.Net email is sponsored by Yahoo. Introducing Yahoo! Search Developer Network - Create apps using Yahoo! Search APIs Find out how you can build Yahoo! directly into your own Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005 _______________________________________________ Rosegarden-devel mailing list Rosegarden-devel@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel