CMake ist ein plattformübergreifender Open-Source-Generator für Build-Systeme. Es generiert Dateien für Build-Systeme wie native Makefiles, Ninja-Build- und Projektdateien für mehrere integrierte Entwicklungsumgebungen.
Mein Betriebssystem ist centos mit einem Standard-gcc im Pfad /usr/bin/gcc. Aber es ist alt, ich brauche eine neue Version von gcc. Also installiere ich eine neue Version in einem neuen Pfad/usr/local/bin/gcc . Aber wenn ich laufe cmake, verwendet es immer noch die alte Version gcc path ( /usr/bin/gcc). Wie kann …
Nach der Installation von Visual Studio 2015 und dem Ausführen von CMake in einem früheren Projekt werden CMake-Fehler angezeigt, die darauf hinweisen, dass der C-Compiler nicht gefunden werden konnte. The C compiler identification is unknown The CXX compiler identification is unknown CMake Error at CMakeLists.txt:4 (PROJECT): No CMAKE_C_COMPILER could be …
Ich habe mindestens drei Möglichkeiten gefunden, dies zu tun, und ich frage mich, welche der idiomatische Weg ist. Dies muss nahezu universell für jede statische Bibliothek durchgeführt werden. Ich bin überrascht, dass der Makefile-Generator in CMake dies nicht automatisch zu statischen Bibliotheken hinzufügt. (es sei denn, ich vermisse etwas?) target_compile_options(myLib …
Irgendwie bin ich total verwirrt darüber, wie CMake funktioniert. Jedes Mal, wenn ich denke, dass ich näher komme, um zu verstehen, wie CMake geschrieben werden soll, verschwindet es im nächsten Beispiel, das ich lese. Ich möchte nur wissen, wie ich mein Projekt strukturieren soll, damit mein CMake in Zukunft am …
Ich habe mich gefragt, ob es einen Beispielcode für Makefiles ( make) und CMakeLists.txt( cmake) gibt, die beide dasselbe tun (der einzige Unterschied besteht darin, dass einer in makeund der andere in geschrieben ist cmake). Ich habe versucht, nach 'cmake vs make' zu suchen, aber ich habe keine Codevergleiche gefunden. …
Ich versuche, eine Software zu installieren, die cmake verwendet, um sich selbst zu installieren, wenn ich bei commandlin cmake gebe. Es gibt mir folgenden Fehler in dieser Datei, CMakeLists.txt -------- Zeile ---> find_package ( OpenSSL ERFORDERLICH): - cmake .. -- Could NOT find Git (missing: GIT_EXECUTABLE) ZLib include dirs: /usr/include …
Wie kann ich mit CMake die Warnstufe für ein Projekt (nicht die gesamte Lösung) festlegen ? Sollte unter Visual Studio und GCC funktionieren . Ich habe verschiedene Optionen gefunden, aber die meisten scheinen entweder nicht zu funktionieren oder stimmen nicht mit der Dokumentation überein.
Ich bin ziemlich neu in CMake und habe ein paar Tutorials zur Verwendung gelesen und einige komplizierte 50 Zeilen CMake-Skript geschrieben, um ein Programm für 3 verschiedene Compiler zu erstellen. Damit ist wahrscheinlich mein gesamtes Wissen über CMake abgeschlossen. Jetzt ist mein Problem, dass ich einen Quellcode habe, dessen Ordner …
Ich habe ein Projekt A, das eine statische Bibliothek als Ziel exportiert: install(TARGETS alib DESTINATION lib EXPORT project_a-targets) install(EXPORT project_a-targets DESTINATION lib/alib) Jetzt möchte ich Projekt A als externes Projekt aus Projekt B verwenden und die erstellten Ziele einbeziehen: ExternalProject_Add(project_a URL ...project_a.tar.gz PREFIX ${CMAKE_CURRENT_BINARY_DIR}/project_a CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> ) include(${CMAKE_CURRENT_BINARY_DIR}/lib/project_a/project_a-targets.cmake) Das Problem …
Ich erstelle eine große Bibliothek mit CMake und möchte, dass Benutzer bestimmte Teile meines Erstellungsprozesses selektiv aktivieren / deaktivieren können. Wie kann ich meinem CMake-Build Befehlszeilenoptionen hinzufügen, z. B. damit Benutzer so etwas eingeben können cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..? Anscheinend erstellt das Schlüsselwort OPTION Variablen, die über die …
Wie sollte meine CMake-Datei aussehen, um mein Programm mit der Boost-Bibliothek unter Ubuntu zu verknüpfen? Die beim Ausführen angezeigten Fehler make: main.cpp:(.text+0x3b): undefined reference to `boost::program_options::options_description::m_default_line_length' Die Hauptdatei ist wirklich einfach: #include <boost/program_options/options_description.hpp> #include <boost/program_options/option.hpp> using namespace std; #include <iostream> namespace po = boost::program_options; int main(int argc, char** argv) { …
Ich möchte einen globalen Satz von Flags zum Kompilieren eines Projekts verwenden. Dies bedeutet, dass ich in meiner CMakeLists.txt-Datei der obersten Ebene Folgendes angegeben habe: ADD_DEFINITIONS ( -Wall -Weffc++ -pedantic -std=c++0x ) Für eine bestimmte Datei (sagen wir "foo.cpp") in einem Unterverzeichnis möchte ich jedoch die Kompilierungsflags so ändern, dass …
Ich verwende CMake, um mein Projekt zu erstellen. Ich habe eine Unit-Test-Binärdatei hinzugefügt, die das Boost-Unit-Test-Framework verwendet. Diese eine Binärdatei enthält alle Komponententests. Ich habe diese Binärdatei hinzugefügt, die von CTest ausgeführt werden soll: ADD_EXECUTABLE( tftest test-main.cpp ) ENABLE_TESTING() ADD_TEST( UnitTests tftest) Die Build-Ausgabe in Visual Studio zeigt jedoch nur …
Ich bin ein Anfänger von CMAKE. Unten finden Sie eine einfache cmake-Datei, die in Fenstern der Mingw-Umgebung gut funktioniert. Das Problem liegt eindeutig in der target_link_libraries()Funktion von CMAKE, wo ich libwsock32.a verknüpfe. In Windows funktioniert das und ich bekomme die Ergebnisse. Unter Linux /usr/bin/ldwird jedoch erwartungsgemäß nach dem gesucht, -lwsock32was …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.