cmake erstellt ein gemeinsames Objekt

8

Ich habe drei Dateien:

lib.c lib.h = & gt; Sie sollten als .so-Datei erstellt werden client.c = & gt; Dies sollte als ausführbare Datei erstellt werden.
Innerhalb der client.c schließe ich die Datei lib.h ein, um die Deklarationen der unter lib.c

definierten Funktionen zu erhalten

Kann mir jemand die genaue CMakeLists-Datei nennen, die ich verwenden sollte, damit der Quellbereich mit Cmakes temporären Dateien und den Binärdateien und den Bibliotheken (.dlls im Falle von Windows) in separaten Build- und Binärverzeichnissen aufgeräumt wird ?

    
Sankar P 02.07.2012, 12:19
quelle

2 Antworten

4

Cmake baut standardmäßig auf separaten Build-Verzeichnissen auf (ich habe dieses Beispiel nicht getestet):

%Vor%

Sie tun:

%Vor%

Alles wäre im Aufbau.

    
duncan 02.07.2012, 12:45
quelle
12

Diese Lösung erstellt keine .so -Datei, sondern ein Cmake-Äquivalent für die weitere Aufnahme mit cmake.
Ich suche nach einer Lösung, die das Äquivalent dazu liefert:

%Vor%

Dies erzeugt ein plugin_lib.so , das zur Laufzeit dynamisch mit dlopen geladen werden kann.

Der Lösung fehlt die "SHARED" -Option wie folgt:

%Vor%     
user2478081 23.09.2013 19:18
quelle

Tags und Links