logo

Kompilere med g++

g++ kommando er en GNU c++ kompileringskommando, som bruges til forbehandling, kompilering, samling og sammenkædning af kildekode for at generere en eksekverbar fil. De forskellige muligheder for g++ kommando giver os mulighed for at stoppe denne proces på mellemstadiet.

  • Tjek oplysninger om g++ compilerversion:
g++ --version>




åbne indstillingsmenuen
  • Kompiler en CPP-fil for at generere eksekverbar målfil: g++ filnavn kommando bruges til at kompilere og oprette en eksekverbar fil a.ud (standardmålnavn).
    Eksempel: Givet et simpelt program til at udskrive Hello Geek på standard output med filnavn hej.cpp
CPP
// hello.cpp file #include  int main() {  std::cout << 'Hello Geek
';  return 0; }>


g++ hello.cpp>



Dette kompilerer og linker hej.cpp at producere en standard eksekverbar målfil a.ud i den nuværende arbejdsmappe. For at køre dette program skal du skrive ./a.ud hvor ./ repræsenterer nuværende arbejdskatalog og a.ud er den eksekverbare målfil.



./a.out>


  • g++ -S filnavn bruges kun til at kompilere filnavn og ikke samle eller forbinde. Det vil generere en filnavn.s assembly kildefil.
    Eksempel:
g++ -S hello.cpp>


com-only




  • g++ -c filnavn bruges kun til at kompilere og samle filnavn og ikke link objektkoden for at producere eksekverbar fil. Det vil generere en filnavn.o objektkodefil i nuværende arbejdsmappe.
    Eksempel:
g++ -c hello.cpp>


enkelt-c


  • g++ -o target_name filnavn: Kompilerer og links filnavn og genererer eksekverbar målfil med target_name (eller a.out som standard).
    Eksempel:
g++ -o main.exe hello.cpp>


  • Kompiler og link flere filer: Hvornår -c flag bruges, kalder det kompileringstrinnet, som oversætter kildekode til objektkode. Når -o flag bruges, linker det objektkode for at skabe den eksekverbare fil fra filnavn.o til a.out (standard) , kan flere filer sendes sammen som argumenter.
    Eksempel:
CPP
// hello.cpp file #include 'helloWorld.h' #include  int main() {  std::cout << 'Hello Geek
';  helloWorld();  return 0; }>


CPP
// helloWorld.cpp file #include  void helloWorld() {  std::cout << 'Hello World
'; }>


alfa beta beskæring
CPP
// helloWorld.h file void helloWorld();>


g++ -c helloWorld.cpp hello.cpp>
  • Den kompilerer og opretter objektkode til filerne helloWorld.cpp og hello.cpp til henholdsvis helloWorld.o og hello.o.
g++ -o main.exe helloWorld.o hello.o>
  • Den forbinder objektkoderne helloWorld.o og hello.o for at oprette en eksekverbar fil main.exe
./main.exe>
  • Den kører den eksekverbare fil main.exe
  • g++ -Væg filnavn: Den udskriver alle advarselsmeddelelser, der genereres under kompilering af filnavn .
    Eksempel:
CPP
// hello.cpp file #include  int main() {  int i;  std::cout << 'Hello Geek
';  return 0; }>


g++ -Wall hello.cpp>
  • Filtypenavnet for c++-filer kan være .cpp eller .c++, .cpp er meget udbredt, men .cpp og .c++ er nøjagtigt de samme, og alle ovenstående funktioner er også de samme for .c++

advare