• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[geloest]make manuell klappt, make in rpmbuild klappt nicht

Hallo,

ich versuche fuer ein Qt Program ein rpm zu bauen. Manuelles kompilieren mit make funktioniert, wenn ich das rpm baue und dort das make aufgerufen wird bekomme ich die Fehlermeldung dass einige Headerdateien, Files, etc nicht deklariert sind. Es handelt sich um Files aus einem anderen, abhaengigen Paket was ich vorher installiert habe. Wie gesagt das "manuelle make" funktioniert.

Hat jemand eine Idee?

Danke und Gruss,
Jochen

PS: Hier der Fehler von rpmbuild

+ /bin/mkdir /var/tmp/reveal-buildroot
+ cd reveal-1.1
+ cd projects
+ qmake Reveal.pro
Project MESSAGE: Configuring library dependencies for Reveal:
Project MESSAGE: ->Using manual paths
Project MESSAGE: ->Build will require libjpeg
Project MESSAGE: ->Build will require libexiv2
+ make
g++ -c -pipe -fno-strict-aliasing -O2 -O2 -fno-exceptions -D_REENTRANT -Wall -W -DBIN_DIR=\"/usr/bin\" -DRESOURCE_DIR=\"/usr/share/Reveal\" -DTARGET=\"Reveal\" -DNEEDED_TRANSLATIONS=\""Reveal commonDialogs generalTools qt"\" -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I/usr/include -I/usr/local/include/libexiv2 -Itmp -I. -o tmp/config.o ../src/config.cpp
g++ -c -pipe -fno-strict-aliasing -O2 -O2 -fno-exceptions -D_REENTRANT -Wall -W -DBIN_DIR=\"/usr/bin\" -DRESOURCE_DIR=\"/usr/share/Reveal\" -DTARGET=\"Reveal\" -DNEEDED_TRANSLATIONS=\""Reveal commonDialogs generalTools qt"\" -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I/usr/include -I/usr/local/include/libexiv2 -Itmp -I. -o tmp/reveal.o ../src/Reveal/reveal.cpp
In file included from ../src/Reveal/exposurePane.h:21,
from ../src/Reveal/reveal.cpp:23:
../src/Reveal/../_metadataTools/metadataInterface.h:14:21: error: image.hpp: No such file or directory
../src/Reveal/../_metadataTools/metadataInterface.h:15:20: error: exif.hpp: No such file or directory
../src/Reveal/../_metadataTools/metadataInterface.h:16:20: error: iptc.hpp: No such file or directory
../src/Reveal/../_metadataTools/metadataInterface.h:17:21: error: types.hpp: No such file or directory
../src/Reveal/../_metadataTools/metadataInterface.h:268: error: ‘Exiv2’ has not been declared
../src/Reveal/../_metadataTools/metadataInterface.h:268: error: ISO C++ forbids declaration of ‘ExifData’ with no type
../src/Reveal/../_metadataTools/metadataInterface.h:268: error: expected ‘;’ before ‘*’ token
../src/Reveal/../_metadataTools/metadataInterface.h:271: error: ‘Exiv2’ has not been declared
../src/Reveal/../_metadataTools/metadataInterface.h:271: error: ISO C++ forbids declaration of ‘IptcData’ with no type
../src/Reveal/../_metadataTools/metadataInterface.h:271: error: expected ‘;’ before ‘*’ token
../src/Reveal/../_metadataTools/metadataInterface.h:294: error: ‘Exiv2’ has not been declared
../src/Reveal/../_metadataTools/metadataInterface.h:294: error: ‘AutoPtr’ does not name a type
../src/Reveal/../_metadataTools/metadataInterface.h:295: error: ‘Exiv2’ has not been declared
../src/Reveal/../_metadataTools/metadataInterface.h:295: error: ‘ExifData’ does not name a type
../src/Reveal/../_metadataTools/metadataInterface.h:296: error: ‘Exiv2’ has not been declared
../src/Reveal/../_metadataTools/metadataInterface.h:296: error: ‘IptcData’ does not name a type
../src/Reveal/reveal.cpp: In member function ‘void Reveal::tagsByGroup(QList<MetadataGroup>&, QList<MetadataElementList>&, QList<MetadataGroup>&, QList<MetadataElementList>&)’:
../src/Reveal/reveal.cpp:619: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:619: error: expected initializer before ‘*’ token
../src/Reveal/reveal.cpp:620: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:620: error: ‘const_iterator’ was not declared in this scope
../src/Reveal/reveal.cpp:620: error: expected `;' before ‘ExifEnd’
../src/Reveal/reveal.cpp:621: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:621: error: expected `;' before ‘i’
../src/Reveal/reveal.cpp:621: error: ‘i’ was not declared in this scope
../src/Reveal/reveal.cpp:621: error: ‘ExifEnd’ was not declared in this scope
../src/Reveal/reveal.cpp:732: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:732: error: expected initializer before ‘*’ token
../src/Reveal/reveal.cpp:733: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:733: error: expected `;' before ‘IptcEnd’
../src/Reveal/reveal.cpp:734: error: ‘Exiv2’ has not been declared
../src/Reveal/reveal.cpp:734: error: expected `;' before ‘i’
../src/Reveal/reveal.cpp:734: error: ‘i’ was not declared in this scope
../src/Reveal/reveal.cpp:734: error: ‘IptcEnd’ was not declared in this scope
make: *** [tmp/reveal.o] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.12615 (%build)
 
Reveal braucht einen Patch zum Kompilieren:
Code:
--- Reveal.pro.orig
+++ Reveal.pro
@@ -57,6 +57,7 @@
     LIBS += ../libs/libjpeg.a
     LIBS += ../libs/libqt-mt.a
   } else {
+    INCLUDEPATH += /usr/include/exiv2
     LIBS += -lexiv2
     LIBS += -ljpeg
   }
(Vorausgesetzt, Du hast die exiv2-Header auch wirklich dort installiert)
 
Oben