El comando g ++ es un comando de invocación del compilador GNU c ++, que se utiliza para el preprocesamiento, la compilación, el ensamblaje y la vinculación del código fuente para generar un archivo ejecutable. Las diferentes “opciones” del comando g++ nos permiten detener este proceso en la etapa intermedia.
- Verifique la información de la versión del compilador g ++:
g++ --version
- Compile un archivo CPP para generar un archivo de destino ejecutable: el comando g ++ file_name se usa para compilar y crear un archivo ejecutable a.out (nombre de destino predeterminado).
Ejemplo: dado un programa simple para imprimir «Hello Geek» en la salida estándar con el nombre de archivo hello.cpp
CPP
// hello.cpp file #include <iostream> int main() { std::cout << "Hello Geek\n"; return 0; }
g++ hello.cpp
Esto compila y vincula hello.cpp para producir un archivo ejecutable de destino predeterminado a.out en el directorio de trabajo actual. Para ejecutar este programa, escriba ./a.out , donde ./ representa el directorio de trabajo actual y a.out es el archivo de destino ejecutable.
./a.out
- g ++ -S file_name se usa solo para compilar el file_name y no para ensamblar o vincular. Generará un archivo de origen de ensamblaje file_name.s .
Ejemplo:
g++ -S hello.cpp
- g++ -c nombre_archivo se usa solo para compilar y ensamblar el nombre_archivo y no vincular el código objeto para producir un archivo ejecutable. Generará un archivo de código de objeto file_name.o en el directorio de trabajo actual.
Ejemplo:
g++ -c hello.cpp
- g++ -o target_name file_name: compila y vincula file_name y genera un archivo de destino ejecutable con target_name (o a.out de forma predeterminada).
Ejemplo:
g++ -o main.exe hello.cpp
- Compile y vincule varios archivos: cuando se usa el indicador -c , invoca la etapa del compilador que traduce el código fuente en código objeto. Cuando se usa el indicador -o, vincula el código objeto para crear el archivo ejecutable desde file_name.o a a.out( predeterminado) , se pueden pasar varios archivos juntos como argumentos.
Ejemplo:
CPP
// hello.cpp file #include "helloWorld.h" #include <iostream> int main() { std::cout << "Hello Geek\n"; helloWorld(); return 0; }
CPP
// helloWorld.cpp file #include <iostream> void helloWorld() { std::cout << "Hello World\n"; }
CPP
// helloWorld.h file void helloWorld();
g++ -c helloWorld.cpp hello.cpp
- Compila y crea código objeto para los archivos helloWorld.cpp y hello.cpp a helloWorld.o y hello.o respectivamente.
g++ -o main.exe helloWorld.o hello.o
- Vincula los códigos de objeto helloWorld.o y hello.o para crear un archivo ejecutable main.exe
./main.exe
- Ejecuta el archivo ejecutable main.exe
- g++ -Wall file_name: Imprime todos los mensajes de advertencia que se generan durante la compilación de file_name .
Ejemplo:
CPP
// hello.cpp file #include <iostream> int main() { int i; std::cout << "Hello Geek\n"; return 0; }
g++ -Wall hello.cpp
- La extensión de archivo para archivos c++ puede ser .cpp o .c++, .cpp se usa ampliamente, pero .cpp y .c++ son exactamente iguales y todas las funcionalidades anteriores también son las mismas para .c++
Publicación traducida automáticamente
Artículo escrito por akshatmahla y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA