Codeblocks C-File in C++-Projekt kompilieren



  • Moin zusammen

    ich habe ein C++-Projekt, in das aber auch einige externe C-Sourcen reinkompiliert werden.
    Nun möchte ich in meinem Codeblocks-Projekt für diese(s) C-File(s) spezifische Compiler-Options setzen, damit die Warnungen, die ich für das gesamt Projekt festgelegt habe, genau dort nicht zum tragen kommen.

    Standardmäßig bekomme ich folgende Warnung beim kompilieren dieses C-Files:

    cc1.exe: warning: command line option '-Wzero-as-null-pointer-constant' is valid for C++/ObjC++ but not for C
    

    Diese Warnung möchte ich loswerden, daher wollte ich explizit diese Warnung im Compiler-Vorgang abschalten, aber nur für die C-Files. Nicht für die CPP-Files.

    In den Advanced-Compiler-Options habe ich also folgendes eingetragen:

    $compiler $options -Wno-zero-as-null-pointer-constant $includes -c $file -o $object
    

    Das Resultat ist folgendes:

    cc1.exe: warning: command line option '-Wno-zero-as-null-pointer-constant' is valid for C++/ObjC++ but not for C
    

    Experimente mit "-w" haben auch nichts gebracht. Ich will aber auf keinen Fall "$options" komplett weglassen, weil dort alle anderen Optionen und Defines des Projekts auch weggelassen werden, einschließlich z.B. "-O2".

    Hat jemand ne Idee wie ich die Warnungen für C-Files explizit ausgrenzen kann?



  • Du solltest dir wohl oder übel ein Makefile basteln und dann dort steuern, dass die .c Files mit gcc (und entsprechenden Optionen) und die .cpp Files mit g++ (und entsprechenden Optionen) separat compiliert werden.


Anmelden zum Antworten