Make für unterschiedliche Compiler



  • Hallo,
    ich möchte ein Makefile für eine kleine C-Demo schreiben, welches sowohl vom gcc als auch vom cl kompiliert wird. Im C-Programm benutze ich sqrt und binde dafür natürlich auch <math.h> ein.
    Beim Linken scheinen sich die beiden Compiler allerdings unterschiedlich zu verhalten. cl linkt die Library automatisch hinzu, wohingegen gcc noch den Schalter -lm benötigt.
    Wie kann ich diese Notwendigkeit am Besten in einem Makefile verpacken. Ursprünglich sollte nur die Compilervariable darin geändert werden.

    Vielen Dank!



  • Geht nicht (ok, wahrscheinlich schon, aber die offensichtliche Loesung ist soviel einfacher). Weil gcc und cl zwei unterschiedliche Programme sind mit unterschiedlichen Kommandozeilenparametern. Du kannst aber zwei targets fuer die beiden Compiler erstellen. Um mit dem gcc zu kompilieren braucht man dann nur "make myProg-gcc" eingeben, fuer cl dann eben "make myProg-cl". Das hat auch den Vorteil, das makefile garnicht zu aendern muessen, wenn man den anderen Compiler benutzen will.



  • könnte das makefile auch selber erkennen, ob cl oder gcc genommen werden soll?


Anmelden zum Antworten