CMake kann die Linkersprache für das Ziel nicht bestimmen

9

Um zu beginnen, habe ich einen Blick auf this posten und konnte keine Lösung für mein Problem finden. Ich versuche, eine Bibliothek in einem Ordner mit zwei Header-Dateien einzurichten und mit meinem Hauptprogramm zu verknüpfen, in meinem Ordner container enthält es:

%Vor%

Die CMakeLists.txt in meinem Container-Ordner ist

%Vor%

, während meine CMakeLists.txt im Quellverzeichnis lautet:

%Vor%

und der Fehler, den ich bekomme:

%Vor%

Ich bin nicht sicher, was ich hier falsch mache, aber ich denke, es hat etwas mit meiner Bibliothek CMake-Datei zu tun.

    
Syntactic Fructose 20.05.2013, 18:15
quelle

1 Antwort

11

Sie haben ein Ziel zum Erstellen von container library hinzugefügt. Dieses Ziel enthält nur Header-Dateien. Siehe CMake-Dokumentation

  

add_library: Fügen Sie dem Projekt mithilfe der angegebenen Quelldateien eine Bibliothek hinzu.

     

add_library ([STATISCH | GEMEINSAM | MODUL])                [EXCLUDE_FROM_ALL]                Quelle1 Quelle2 ... QuelleN)

     

Fügt ein Bibliotheksziel hinzu, das aus den im Befehlsaufruf aufgelisteten Quelldateien erstellt wird. Dies entspricht dem logischen Zielnamen und muss innerhalb eines Projekts global eindeutig sein. Der tatsächliche Dateiname der erstellten Bibliothek basiert auf Konventionen der nativen Plattform (z. B. lib.a oder .lib).

Aber Sie können Bibliothek nicht nur aus Header-Dateien ohne cpp-Datei erstellen. Deshalb haben Sie einen solchen Fehler.

    
Nikolay Viskov 20.05.2013, 19:03
quelle

Tags und Links