Ich möchte Root-Cern-Bibliotheken in meinem Qt-Programm verwenden. Aber ich habe Probleme mit Linker:undefined Bezug zu `TVersionCheck :: TVersionCheck (int)
undefined reference to `TVersionCheck :: TVersionCheck (int)
Ich weiß nicht, was der Grund ist. Ich habe ein anderes Forum gelesen, kann das Problem aber immer noch nicht verstehen. Bitte hilf mir.
Die .pro
Dateiinhalt:
QT += core
QT -= gui
CONFIG += c++11
TARGET = v_root_trees_2
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += "C:/root_v5.34.34/include"
LIBS += -L"C:/root_v5.34.34/lib" \
-lcomplexDict \
-ldequeDict \
-lfreetype \
-llibAfterImage \
-llibASImage \
-llibASImageGui \
-llibCint \
-llibCintex \
-llibCore \
-llibEG \
-llibEGPythia8 \
-llibEve \
-llibFitPanel \
-llibFoam \
-llibFTGL \
-llibFumili \
-llibGdml \
-llibGed \
-llibGenetic \
-llibGenVector \
-llibGeom \
-llibGeomBuilder \
-llibGeomPainter \
-llibGLEW \
-llibGpad \
-llibGraf \
-llibGraf3d \
-llibGui \
-llibGuiBld \
-llibGuiHtml \
-llibGviz3d \
-llibHist \
-llibHistPainter \
-llibHtml \
-llibMathCore \
-llibMathMore \
-llibMatrix \
-llibMinuit \
-llibMinuit2 \
-llibMLP \
-llibNet \
-llibPhysics \
-llibPostscript \
-llibProof \
-llibProofDraw \
-llibProofPlayer \
-llibPyROOT \
-llibQuadp \
-llibRecorder \
-llibReflex \
-llibReflexDict \
-llibRGL \
-llibRHTTP \
-llibRint \
-llibRIO \
-llibRODBC \
-llibRooFit \
-llibRooFitCore \
-llibRooStats \
-llibRootAuth \
-llibSessionViewer \
-llibSmatrix \
-llibSpectrum \
-llibSpectrumPainter \
-llibSPlot \
-llibSQLIO \
-llibTable \
-llibThread \
-llibTMVA \
-llibTree \
-llibTreePlayer \
-llibTreeViewer \
-llibUnuran \
-llibVMC \
-llibWin32gdk \
-llibXMLIO \
-llistDict \
-lmap2Dict \
-lmapDict \
-lmathtext \
-lmultimap2Dict \
-lmultimapDict \
-lmultisetDict \
-lsetDict \
-lvectorDict
main.cpp-Datei:
#include <QCoreApplication>
#include "TMultiGraph.h" // problem if add this line
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
return a.exec();
}
Ich weiß nicht, was falsch ist. Ich habe alle .lib
Dateien hinzugefügt. Die Pfade C:/root_v5.34.34/lib
und C:/root_v5.34.34/include
sind korrekt und existieren. Ändern von Pfaden sehe ich cannot find ...
Fehler. So sind die Pfade korrekt.
Ich überprüfte den ähnlichen Code in VS2013 und sehe keine Fehler. Aber ich schreibe viel Code in Qt und kann IDE nicht ändern. Ich verstehe, dass einige Links den Fehler verursachen, aber nicht finden können.
Es funktioniert nicht: nicht -lAfterImage [link] (http://prntscr.com/b5204w) – Vladislav
Die Wege finden sind korrekt: [libs path] (http://prntscr.com/b5226y) – Vladislav