Ich habe ein relativ einfaches Qt 5.0-Projekt, das CMake 2.8.9 verwendet:
CMakeLists.txt:
%Vor%Hauptfenster.h:
%Vor%MainWindow.cpp:
%Vor%main.cpp:
%Vor% Das Projekt enthält auch eine .ui
-Datei, die mit Qt Creator 2.6.1 (MainWindow.ui) erstellt wurde.
Wenn ich versuche, die Datei mit g++
unter Linux zu erstellen, erhalte ich die folgenden Fehler:
Was könnte möglicherweise diese Art von Fehler verursachen? Ich bin vor kurzem von qmake
zu CMake gewechselt und ich erinnere mich nicht, dass ich so viel Mühe hatte, ein kleines Beispiel zu kompilieren. Was mache ich falsch?
Bearbeiten: Hier wird der Befehl verwendet, um alles zu verknüpfen:
%Vor%Stellt sich heraus, ich habe vergessen:
%Vor%Am Anfang der CMakeLists.txt-Datei.
Ich habe damit lange mit all den hier veröffentlichten Hinweisen gekämpft:
Und hier
Was ich tun musste, war, die Dinge in der richtigen Reihenfolge zu spezifizieren. Zum Beispiel ist das Folgende der Anfang meiner CMakeLists.txt. Beachten Sie, dass die zwei CMAKE-set-Anweisungen vor add_executable kommen. Sobald ich dies getan habe, konnte ich ohne undefinierte Symbole und Vtable-Referenzen verknüpfen. Ich dachte nur, ich würde dies zum Wohle anderer posten.
%Vor%Später in der CMakeLists.txt habe ich folgendes:
%Vor%Das hat den Trick gemacht.