Ich lerne C (noch sehr Anfänger) unter Linux mit dem GCC-Compiler. Ich habe festgestellt, dass einige Bibliotheken, wie die mit dem math.hHeader verwendete Bibliothek, manuell verknüpft werden müssen, wenn sie enthalten sind. Ich habe in den Bibliotheken mit verschiedenen Flags des Formulars verlinkt -l[library-name], beispielsweise -lmfür die oben erwähnte Mathematikbibliothek.
Nachdem jedoch von der Kommandozeile Schalten und / oder Geanyzu Code::Blocks, bemerkte ich , dass Code::BlocksAnwendungen , g++die Programme statt dem kompilieren , gccdass ich gewohnt bin (auch wenn das Projekt auf jeden Fall als C angegeben ist). Außerdem Code::Blocksmüssen die Bibliotheken beim Kompilieren nicht manuell verknüpft werden - Bibliotheken wie die Mathematikbibliothek funktionieren einfach .
Ich habe zwei Fragen:
Ist es "schlecht", C-Programme mit dem g++Compiler zu kompilieren ? Bisher scheint es zu funktionieren, aber schließlich ist C ++ nicht C und ich bin mir ziemlich sicher, dass der g++Compiler für C ++ gedacht ist.
Zweitens ist es der g++Compiler, der die automatische Verknüpfung der Bibliotheken in übernimmt Code::Blocks?