Wie nur c mit cmake kompilieren? [closed]

Lesezeit: 2 Minuten

Ich habe AC-Code, auf dessen Kompilierung ich mit gcc bestehe, nicht mit einem C++-Compiler! Ich möchte eine CMakeLists.txt dafür! Kannst du mir helfen? Hier ist mein einfaches Projekt:

main.c

Benutzeravatar von SirDarius
SirDarius

Das sind die Grundlagen von cmake:

cmake_minimum_required(VERSION 2.6.0)

# here we specify that the project is C language only, so the default
# C compiler on the system will be used
project(myprogram C)

add_executable(myprogram main.c)

Das ist wirklich alles, was Sie brauchen, um eine C-Datei in eine ausführbare Datei zu kompilieren.

Geben Sie Ihr Projekt als a C Sprachprojekt sollte für Ihre Bedürfnisse ausreichen.

Wenn das nicht ausreicht, können Sie den Compiler in der Befehlszeile erzwingen, während Sie cmake aufrufen.

mkdir build && cd build
export CC=gcc    
cmake ..
make

oder

mkdir build && cd build
cmake .. -DCMAKE_C_COMPILER=gcc
make

Bitte beachten Sie auch, dass CMake, wie in den Kommentaren erwähnt, selbst beim Mischen von Sprachen in einem Projekt intelligent genug ist, um den C-Compiler ordnungsgemäß aufzurufen, wenn eine Datei mit der Erweiterung .c gefunden wird.

  • Wo geben Sie an, den C-Compiler in diesem cmake zu verwenden?

    – Arier

    7. August 2013 um 9:43 Uhr

  • Die project Richtlinie

    – SirDarius

    7. August 2013 um 9:43 Uhr


  • Ich dachte, CMake betrachtet *.c-Dateien automatisch als C. Keine Magie erforderlich.

    – rubenvb

    7. August 2013 um 9:52 Uhr

  • @rubenvb das ist richtig, aber da man eine Sprache über die Projektdirektive angeben muss, ist es immer noch die bloße minimale CMakeLists.txt-Datei, die benötigt wird.

    – SirDarius

    7. August 2013 um 9:54 Uhr


  • @rubenvb ja, ich habe das Dokument noch einmal gelesen, standardmäßig entspricht ein Projekt ohne Sprachspezifikation C und C++. Am Ende ist es also immer noch besser, nur C anzugeben, um unnötige Compiler-Prüfungen zu vermeiden.

    – SirDarius

    7. August 2013 um 14:04 Uhr

1437500cookie-checkWie nur c mit cmake kompilieren? [closed]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy