Probleme beim kompilieren / qmake & boost / rotoscoping project.



  • Guten Abend Allerseits,

    Leider begegne ich einigen Problemen beim kompilieren eines Programms.
    Bevor ich die genauen Probleme darstelle, möchte ich hier festhalten, dass ich wenig bis keine Erfahrung mit Programmierung mit C / C# / C++ habe.
    Das Programm versuche ich unter Mac OS X 10.4.11 zum laufen zu bringen.

    Es handelt sich um ein Program aus dem Gebiet der Computervision, der Source Code kann hier geladen werden: http://grail.cs.washington.edu/projects/rotoscoping/software.html ( Projektbeschrieb: http://grail.cs.washington.edu/projects/rotoscoping/ )
    Wie auf dieser Seite vermerkt wird, werden zur Kompilierung die 'qt' und die 'boost' Libraries benötigt. Via Macports habe ich mir 'qt4-mac' und das erforderliche 'boost' installiert. Im INSTALL File ist weiter zu lesen, dass auch 'qt-devel' benötigt wird. Hier tritt bereits das erste Problem auf, ich kann kein entsprechendes Paket oder Bibliothek finden über Macports und auch sonst nicht, zumindest nicht für Mac.

    Trotdem bin ich mal weitergefahren gemäss der Anleitung im INSTALL File. Es soll der Pfad für 'boost' im File 'main.pro' und 'KLT/main.pro' angegeben werden, was ich auch mache.
    Gemäss Schritt 3 habe ich den Befehl 'qmake main.pro' ( ergibt keine Ausgabe ) und anschliessend 'make' ausgeführt. Dabei wird folgendes ausgegeben:

    /usr/bin/g++-4.0 -c -pipe -g -fPIC -Wall -W -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../../boost -I. -I. -F/opt/local/libexec/qt4-mac/lib -o klt.o klt.C
    In file included from klt.h:40,
                     from klt.C:29:
    splineKeeper.h:34:49: error: boost/numeric/ublas/matrix_sparse.hpp: No such file or directory
    splineKeeper.h:35:42: error: boost/numeric/ublas/vector.hpp: No such file or directory
    splineKeeper.h:36:49: error: boost/numeric/ublas/vector_sparse.hpp: No such file or directory
    In file included from klt.C:29:
    klt.h:46:38: error: boost/numeric/ublas/io.hpp: No such file or directory
    diagMatrix.h:36: error: 'boost' has not been declared
    diagMatrix.h:37: error: 'boost' has not been declared
    diagMatrix.h:37: error: expected initializer before '<' token
    multiDiagMatrix.h:29: error: 'boost' has not been declared
    multiDiagMatrix.h:29: error: expected initializer before '<' token
    multiDiagMatrix.h:78: error: ISO C++ forbids declaration of 'Ubcv' with no type
    multiDiagMatrix.h:78: error: expected ';' before '*' token
    splineKeeper.h:50: error: 'boost' has not been declared
    splineKeeper.h:50: error: expected initializer before '<' token
    splineKeeper.h:52: error: 'boost' has not been declared
    splineKeeper.h:53: error: 'boost' has not been declared
    splineKeeper.h:53: error: expected initializer before '<' token
    splineKeeper.h:54: error: 'boost' has not been declared
    splineKeeper.h:54: error: expected initializer before '<' token
    splineKeeper.h:100: error: expected ',' or '...' before '&' token
    splineKeeper.h:100: error: ISO C++ forbids declaration of 'Ubcv' with no type
    buildingSplineKeeper.h:31: error: 'boost' has not been declared
    buildingSplineKeeper.h:31: error: expected initializer before '<' token
    buildingSplineKeeper.h:48: error: expected ',' or '...' before '&' token
    buildingSplineKeeper.h:48: error: ISO C++ forbids declaration of 'Ubcv' with no type
    buildingSplineKeeper.h:59: error: 'Ubcv' was not declared in this scope
    buildingSplineKeeper.h:59: error: template argument 1 is invalid
    buildingSplineKeeper.h:59: error: template argument 2 is invalid
    buildingSplineKeeper.h:59: error: template argument 1 is invalid
    buildingSplineKeeper.h:59: error: template argument 2 is invalid
    kltSpline.h:44: error: 'Ubcv' has not been declared
    kltSpline.h:44: error: 'Ubcv' has not been declared
    kltSpline.h:44: error: 'Ubcv' has not been declared
    kltSpline.h:45: error: 'Ubcv' has not been declared
    kltSpline.h:45: error: 'Ubcv' has not been declared
    kltSpline.h:46: error: 'Ubcv' has not been declared
    myMontage.h: In constructor 'MyMontage::MyMontage(QImage*, int, int, int)':
    myMontage.h:36: error: 'class QImage' has no member named 'create'
    klt.C: In member function 'void KLT_TrackingContext::visMatrix(const double*, int, int) const':
    klt.C:658: error: invalid conversion from 'int' to 'QImage::Format'
    klt.C:658: error:   initializing argument 3 of 'QImage::QImage(int, int, QImage::Format)'
    klt.C: In member function 'void KLT_TrackingContext::safeTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:1051: error: no matching function for call to 'QWaitCondition::wait()'
    /opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers/qwaitcondition.h:63: note: candidates are: bool QWaitCondition::wait(QMutex*, long unsigned int)
    /opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers/qwaitcondition.h:64: note:                 bool QWaitCondition::wait(QReadWriteLock*, long unsigned int)
    klt.C: In member function 'bool KLT_TrackingContext::internalLongCurveTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:2003: warning: unused variable 'numIter'
    klt.C: In function 'QRgb makeMyColor(Vec3f)':
    klt.C:2520: error: variable 'QColor cl' has initializer but incomplete type
    make: *** [klt.o] Error 1
    

    Wie ich das lese, wird der boost Ordner im aktuellen Verzeichnis erwartet. Wenn ich den dorthin kopiere erscheint dieser Fehler nicht mehr, dafür folgendes:

    /usr/bin/g++-4.0 -c -pipe -g -fPIC -Wall -W -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtGui.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include/QtGui -I/opt/local/libexec/qt4-mac/include -I../../boost -I. -I. -F/opt/local/libexec/qt4-mac/lib -o klt.o klt.C
    myMontage.h: In constructor 'MyMontage::MyMontage(QImage*, int, int, int)':
    myMontage.h:36: error: 'class QImage' has no member named 'create'
    klt.C: In member function 'void KLT_TrackingContext::visMatrix(const double*, int, int) const':
    klt.C:658: error: invalid conversion from 'int' to 'QImage::Format'
    klt.C:658: error:   initializing argument 3 of 'QImage::QImage(int, int, QImage::Format)'
    klt.C: In member function 'void KLT_TrackingContext::safeTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:1051: error: no matching function for call to 'QWaitCondition::wait()'
    /opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers/qwaitcondition.h:63: note: candidates are: bool QWaitCondition::wait(QMutex*, long unsigned int)
    /opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers/qwaitcondition.h:64: note:                 bool QWaitCondition::wait(QReadWriteLock*, long unsigned int)
    klt.C: In member function 'bool KLT_TrackingContext::internalLongCurveTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:2003: warning: unused variable 'numIter'
    klt.C: In function 'QRgb makeMyColor(Vec3f)':
    klt.C:2520: error: variable 'QColor cl' has initializer but incomplete type
    make: *** [klt.o] Error 1
    

    Was ich als Laie daraus lese, ist, dass das Programm Fehler aufweist. Gleichzeitig weiss ich, dass dies nicht sein kann.

    ... ja, und da liegt nun auch das Problem. Was muss gemacht werden um das Programm zum laufen zu bringen? Müssen evtl. noch weitere libraries geladen werden ( qt-devel? wo und wie ? )

    Ich bin um jeden Ratschlag der das Programm evtl. doch noch zum laufen bringt dankbar.



  • Hi,

    hast du als Pfad für boost einen relativen oder einen absoluten Pfad angegeben? So wie es aussieht, hast du für boost den Pfad ../../boost angegeben. Ist auch fast richtig, aber ../../ reicht bereits, da alle includes mit einem zusätzlichen boost versehen sind.

    Das zweite Problem liegt daran, dass dein Projekt wohl Qt3 und nicht Qt4 braucht... Zumindest mal würden diese Fehler bei einem Qt3 nicht mehr auftreten. Lies mal im Projekt nach, welche Qt-Version nötig ist (Qt4 hat größere änderungen, sodass es nicht immer Programme kompilieren kann, die mit Qt3 geschrieben sind).

    Gruß
    Jocker



  • Hallo Jocker,

    Vielen dank für Deine Antwort!

    Die Änderung in der Pfadangabe war schon mal genau richtig! Vielen Dank.
    ( Nun gleicher Error wie wenn der boost Ordner im aktuellen Verzeichniss liegt )

    Nun werde ich das Ganze mal entsprechend mit qt3 versuchen ( wird etwas dauern bis qt3 kompiliert ist ). Leider ist auf der Projektseite nicht angegeben welche qt Version benötigt wird.



  • Ok, habe nun mit qt3 kompiliert. Diesmal scheint das Problem fehlende Header Files zu sein.

    c++ -c -pipe -Wall -W -Os -DNDEBUG -ffast-math  -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/opt/local/share/qt3/mkspecs/default -I. -I/opt/local/include -I/include/qt3 -o klt.o klt.C
    klt.C:25:23: error: qdatetime.h: No such file or directory
    In file included from klt.C:29:
    klt.h:29:20: error: qimage.h: No such file or directory
    klt.h:32:21: error: qthread.h: No such file or directory
    In file included from klt.h:37,
                     from klt.C:29:
    multiTrackData.h:30:20: error: qmutex.h: No such file or directory
    multiTrackData.h:31:28: error: qwaitcondition.h: No such file or directory
    In file included from multiSplineData.h:31,
                     from klt.h:38,
                     from klt.C:29:
    contCorr.h:27:25: error: qdatastream.h: No such file or directory
    linearSolver.h:141: warning: unused parameter 'v'
    multiTrackData.h:168: error: ISO C++ forbids declaration of 'QMutex' with no type
    multiTrackData.h:168: error: expected ';' before '*' token
    multiTrackData.h:169: error: ISO C++ forbids declaration of 'QWaitCondition' with no type
    multiTrackData.h:169: error: expected ';' before '*' token
    multiTrackData.h: In constructor 'MultiTrackData::MultiTrackData()':
    multiTrackData.h:85: error: '_z_mutex' was not declared in this scope
    multiTrackData.h:85: error: expected type-specifier before 'QMutex'
    multiTrackData.h:85: error: expected `;' before 'QMutex'
    multiTrackData.h:85: error: '_z_wait' was not declared in this scope
    multiTrackData.h:85: error: expected type-specifier before 'QWaitCondition'
    multiTrackData.h:85: error: expected `;' before 'QWaitCondition'
    multiTrackData.h: In destructor 'MultiTrackData::~MultiTrackData()':
    multiTrackData.h:98: error: '_z_wait' was not declared in this scope
    multiTrackData.h:98: error: type '<type error>' argument given to 'delete', expected pointer
    multiTrackData.h:99: error: '_z_mutex' was not declared in this scope
    multiTrackData.h:99: error: type '<type error>' argument given to 'delete', expected pointer
    contCorr.h: At global scope:
    contCorr.h:42: error: expected `)' before '*' token
    contCorr.h:44: error: 'QDataStream' has not been declared
    multiSplineData.h:170: error: ISO C++ forbids declaration of 'QMutex' with no type
    multiSplineData.h:170: error: expected ';' before '*' token
    multiSplineData.h:171: error: ISO C++ forbids declaration of 'QWaitCondition' with no type
    multiSplineData.h:171: error: expected ';' before '*' token
    multiKeeper.h:90: error: 'TRUE' was not declared in this scope
    klt.h:113: error: expected class-name before '{' token
    kltSpline.h:64: error: 'QTime' does not name a type
    klt.h:113: warning: 'class KLT_TrackingContext' has virtual functions but non-virtual destructor
    myMontage.h:64: error: field '_mont' has incomplete type
    myMontage.h: In constructor 'MyMontage::MyMontage(QImage*, int, int, int)':
    myMontage.h:34: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:34: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:34: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:34: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:36: error: '_mont' was not declared in this scope
    myMontage.h:43: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:43: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:43: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:43: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:49: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h:49: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    myMontage.h: In member function 'void MyMontage::save(char*)':
    myMontage.h:60: error: '_mont' was not declared in this scope
    klt.C: In constructor 'KLT_FullPyramid::KLT_FullPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:43: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:45: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:45: error:   initializing argument 1 of 'void KLT_FullPyramid::initMe(QImage, const KLT_TrackingContext*)'
    klt.C: In constructor 'KLT_FullPyramid::KLT_FullPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:43: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In constructor 'KLT_FullPyramid::KLT_FullPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:43: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In member function 'void KLT_FullPyramid::initMe(QImage, const KLT_TrackingContext*)':
    klt.C:48: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:51: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:51: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:53: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:53: error:   initializing argument 1 of 'KLT_FloatImage::KLT_FloatImage(QImage)'
    klt.C:57: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:57: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:58: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:58: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In member function 'void KLT_FullPyramid::initMeFromEdges(QImage, const KLT_TrackingContext*)':
    klt.C:66: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:69: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:69: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:71: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:71: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:72: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:72: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:72: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:72: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:73: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:73: error:   initializing argument 1 of 'void KLT_FloatImage::takeRed(QImage)'
    klt.C:73: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:73: error:   initializing argument 1 of 'void KLT_FloatImage::takeGreen(QImage)'
    klt.C:73: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:73: error:   initializing argument 1 of 'void KLT_FloatImage::takeBlue(QImage)'
    klt.C:76: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:76: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:77: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:77: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:77: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:77: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:78: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:78: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:79: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:79: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:79: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:79: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:84: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:84: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:90: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:90: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:91: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:91: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In constructor 'KLT_FullCPyramid::KLT_FullCPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:112: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:115: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:115: error:   initializing argument 1 of 'void KLT_FullCPyramid::initMe(QImage, const KLT_TrackingContext*)'
    klt.C: In constructor 'KLT_FullCPyramid::KLT_FullCPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:112: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In constructor 'KLT_FullCPyramid::KLT_FullCPyramid(QImage, const KLT_TrackingContext*)':
    klt.C:112: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In member function 'void KLT_FullCPyramid::initMe(QImage, const KLT_TrackingContext*)':
    klt.C:118: error: 'im' has incomplete type
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:120: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:120: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:124: error: invalid use of undefined type 'struct QImage'
    klt_util.h:27: error: forward declaration of 'struct QImage'
    klt.C:124: error:   initializing argument 1 of 'void KLT_ColorPyramid::smoothAndComputePyramid(QImage, const Kernels*, float)'
    klt.C:127: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:127: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:128: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C:128: error: invalid use of undefined type 'const struct QImage'
    klt_util.h:27: error: forward declaration of 'const struct QImage'
    klt.C: In member function 'void KLT_TrackingContext::visMatrix(const double*, int, int) const':
    klt.C:658: error: variable 'QImage im' has initializer but incomplete type
    klt.C:660: error: 'qRgb' was not declared in this scope
    klt.C: In member function 'int KLT_TrackingContext::steihaugSolver(GenKeeper*, double*, double, bool*, double*)':
    klt.C:823: error: 'QTime' was not declared in this scope
    klt.C:823: error: expected `;' before 'time'
    klt.C:824: error: request for member 'start' in 'time', which is of non-class type 'time_t ()(time_t*)'
    klt.C:924: error: request for member 'elapsed' in 'time', which is of non-class type 'time_t ()(time_t*)'
    klt.C:960: error: request for member 'elapsed' in 'time', which is of non-class type 'time_t ()(time_t*)'
    klt.C: In member function 'void KLT_TrackingContext::safeTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:1047: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1050: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1051: error: 'struct MultiTrackData' has no member named '_z_wait'
    klt.C:1058: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1060: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1063: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1067: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:1069: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C: In member function 'void KLT_TrackingContext::longCurveTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, bool)':
    klt.C:1084: error: 'QTime' was not declared in this scope
    klt.C:1084: error: expected `;' before 'time'
    klt.C:1085: error: request for member 'start' in 'time', which is of non-class type 'time_t ()(time_t*)'
    klt.C:1126: error: request for member 'elapsed' in 'time', which is of non-class type 'time_t ()(time_t*)'
    klt.C: In member function 'bool KLT_TrackingContext::internalLongCurveTrack2(const KLT_FullCPyramid**, const KLT_FullPyramid**, int, double, int, int, int)':
    klt.C:2043: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:2060: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:2063: error: 'struct MultiTrackData' has no member named '_z_mutex'
    klt.C:2003: warning: unused variable 'numIter'
    klt.C: At global scope:
    klt.C:2518: error: 'QRgb' does not name a type
    klt.C:43: confused by earlier errors, bailing out
    {standard input}:47:FATAL:.abort  detected.  Assembly stopping.
    make: *** [klt.o] Error 1
    

    Weiss jemand Rat?



  • Mit qt3 ( anstelle von qt3-mac ) kommt es schon besser.

    Trotzdem ergibt sich wieder folgende Ausgabe. Kann mir jemand sagen, was das genau heissen soll und was gemacht werden muss, dass es richtig kompiliert?

    g++-4.0 -c -pipe -Wall -W -Os -DNDEBUG -ffast-math  -D__DARWIN_X11__ -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/opt/local/lib/qt3/mkspecs/default -I. -I/opt/local/include -I/Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/include -I/opt/local/lib/qt3/include -I/include -o multiDiagMatrix.o multiDiagMatrix.C
    multiDiagMatrix.C: In constructor 'MultiDiagMatrix::MultiDiagMatrix(int, const std::vector<int, std::allocator<int> >&, const std::vector<int, std::allocator<int> >&)':
    multiDiagMatrix.C:47: warning: comparison between signed and unsigned integer expressions
    multiDiagMatrix.C:48: warning: comparison between signed and unsigned integer expressions
    multiDiagMatrix.C: In member function 'double& MultiDiagMatrix::operator()(uint, uint)':
    multiDiagMatrix.C:130: error: invalid initialization of non-const reference of type 'double&' from a temporary of type 'boost::numeric::ublas::sparse_vector_element<boost::numeric::ublas::compressed_vector<double, 0ul, boost::numeric::ublas::unbounded_array<size_t, std::allocator<size_t> >, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > > >'
    multiDiagMatrix.C: In member function 'void MultiDiagMatrix::outputMat(FILE*)':
    multiDiagMatrix.C:160: warning: format '%d' expects type 'int', but argument 4 has type 'long unsigned int'
    multiDiagMatrix.C:161: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int'
    make: *** [multiDiagMatrix.o] Error 1
    

    Vielen Dank!


Anmelden zum Antworten