logo

Kompilere med g++

g++ kommando er en GNU c++ kompilator påkallingskommando, som brukes til forbehandling, kompilering, montering og kobling av kildekode for å generere en kjørbar fil. De forskjellige alternativene for g++-kommandoen lar oss stoppe denne prosessen på mellomstadiet.

  • Sjekk informasjon om g++ kompilatorversjon:
g++ --version>




åpne innstillingsmenyen
  • Kompiler en CPP-fil for å generere kjørbar målfil: g++ filnavn kommandoen brukes til å kompilere og lage en kjørbar fil a.ut (standard målnavn).
    Eksempel: Gitt et enkelt program for å skrive ut Hello Geek på standard utgang med filnavn hei.cpp
CPP
// hello.cpp file #include  int main() {  std::cout << 'Hello Geek
';  return 0; }>


g++ hello.cpp>



Denne kompilerer og linker hei.cpp for å produsere en standard kjørbar målfil a.ut i gjeldende arbeidskatalog. For å kjøre dette programmet, skriv ./a.ut hvor ./ representerer nåværende arbeidskatalog og a.ut er den kjørbare målfilen.



./a.out>


  • g++ -S filnavn brukes kun til å kompilere filnavn og ikke montering eller kobling. Det vil generere en filnavn.s assembly kildefil.
    Eksempel:
g++ -S hello.cpp>


com-bare




  • g++ -c filnavn brukes kun til å kompilere og montere filnavn og ikke koble objektkoden for å produsere en kjørbar fil. Det vil generere en filnavn.o objektkodefil i gjeldende arbeidskatalog.
    Eksempel:
g++ -c hello.cpp>


enkelt-c


  • g++ -o målnavn filnavn: Kompilerer og linker filnavn og genererer kjørbar målfil med målnavn (eller a.out som standard).
    Eksempel:
g++ -o main.exe hello.cpp>


  • Kompiler og koble sammen flere filer: Når -c flagget brukes, påkaller det kompilatorstadiet som oversetter kildekode til objektkode. Når -o-flagget brukes, kobler det objektkode for å lage den kjørbare filen 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
'; }>


java samling
CPP
// helloWorld.h file void helloWorld();>


g++ -c helloWorld.cpp hello.cpp>
  • Den kompilerer og lager objektkode for filene helloWorld.cpp og hello.cpp til henholdsvis helloWorld.o og hello.o.
g++ -o main.exe helloWorld.o hello.o>
  • Den kobler objektkodene helloWorld.o og hello.o for å lage en kjørbar fil main.exe
./main.exe>
  • Den kjører den kjørbare filen main.exe
  • g++ -Vegg filnavn: Den skriver ut alle advarselsmeldinger som genereres under kompilering av filnavn .
    Eksempel:
CPP
// hello.cpp file #include  int main() {  int i;  std::cout << 'Hello Geek
';  return 0; }>


g++ -Wall hello.cpp>
  • Filtypen for c++-filer kan være .cpp eller .c++, .cpp er mye brukt, men .cpp og .c++ er nøyaktig like og alle funksjonene ovenfor er like for .c++ også

varsle