Optionen beim Kompilieren



  • Hallo

    Ich habe ein simples C-Programm, das mit scanf() zuerst Zahlen und Zeichen einliest, danach auswertet und eine neue Zahl ausgibt.

    Kompiliere ich jedoch mit "gcc -lm -O2 meinedatei.c" (so ist es in der Aufgabe gefragt) kommt als Resultat immer 0, kompiliere ich nur mit "gcc meinedatei.c", ist das Resultat korrekt.

    Meine Frage: was bewirkt -lm -O2 genau und wie kann ich dieses Problem lösen?

    MfG
    keman



  • Keman schrieb:

    Meine Frage: was bewirkt -lm -O2 genau

    Die Mathematik-Bibliothek wird hinzugelinkt (du kannst funktionen, wie sin benutzen) und der Compiler optimiert deinen Code auf Geschwindigkeit.

    Keman schrieb:

    und wie kann ich dieses Problem lösen?

    Du zeigst mal den Teil deines Programms, wo es zu Problemen kommt.

    Es kann sein, dass durch das Optimieren, ein Fehler zu Tage kommt, der sonst ohne das optimieren, zufälligerweise nicht auffällt. (Rein theoretisch, könnte es auch ein Fehler beim Optimieren sein, ist aber nicht so wahrscheinlich).


Log in to reply