Crear ejecutable para ubuntu a partir de fuentes c++

Imagen de jocor87
0 puntos

Buenas ,

Tengo el codigo fuente de una aplicacion en c++, son archivos .cpp .h principalmente.

Mi pregunta es como puedo hacer un solo archivo ejecutable para ubuntu a partir de esos archivos.

Muchas Gracias.

Imagen de ubuntu111
+1
0
-1

¡Buenas noches!

No se si utilizas un IDE o simplemente un editor de textos, pero te dire los 2 casos:
·IDE: Lo más seguro es que tengas una opción de compilar y listo

Si solo tienes el codigo fuente:

Utiliza la terminal. Ves a la carpeta donde tengas el codigo fuente (cd ) y a continuación:
g++ archivo.cpp -o "nombre del programa"

Ejemplo:
g++ main.cpp -o programa

En teoria es esto :)

P.D: para ejecutarlo ./programa

+1
0
-1


Si eres programador, ya sea avanzado o novato, entra en http://www.aprendeprogramacion.net/ todo para empezar a programar.

Imagen de ubaloie
+1
0
-1

Bueno, mi consejo es que crees un archivo makefile y luego crees el ejecutable con la utilidad make.

Te muestro un ejemplo, está escrito en c pero se puede portar para c con clases con pocos cambios:

Tenemos un proyecto con cuatro archivos llamados respectivamente:

main.c
funcionValor.c
funcionReferencia.c
prototipos.h

El código fuente, para quien le interese ver en práctica el ejemplo, es el siguiente:

/*
 *ARCHIVO main.c
 *
 * En este sencillo programa vemos cómo pasar argumentos a una función por valor y por referencia, en este último caso usando punteros.
 */
#include <stdlib.h>
#include <stdio.h> 
#include <string.h>

#include "prototipos.h"
#include "funcionValor.c"
#include "funcionReferencia.c"

//Función main
int main(int argc, char** argv) {
	
	int numero = 5;
	
	printf("Valor del número ANTES de llamar a la función por valor: %d \n", numero);
	funPorValor(numero);
	printf("Valor del número DESPUÉS de llamar a la función por valor: %d \n", numero);
	
	printf("\nValor del número ANTES de llamar a la función por referencia: %d \n", numero);
	funPorReferencia(&numero);
	printf("Valor del número DESPUÉS de llamar a la función por referencia: %d \n", numero);
	
    return (EXIT_SUCCESS);
}


/*
 *ARCHIVO funcionValor.c
 *
 */
//Función con parametros por valor, su valor no cambia a nivel global
void funPorValor(int numero)
{
	numero = numero + 3;
	printf("Valor del número dentro de la función por valor: %d \n", numero);
}


/*
 *ARCHIVO funcionReferencia.c
 *
 *///Función con parámetros pasados por referencia, su valor es cambiado a nivel global
void funPorReferencia(int *numero)
{
	*numero = *numero + 3;
	printf("Valor del número dentro de la función: %d \n", *numero);
}


/*
 *ARCHIVO prototipos.h
 *
 *///Prototipos de las funciones:
void funPorValor(int numero);
void funPorReferencia(int *numero);

Bien, llegados a este punto creamos un archivo de texto al que llamaremos makefile y con el siguiente contenido y en la misma carpeta donde tengamos todos los archivos fuente(Nota: Se puede especificar luego rutas y muchas más cosas en el makefile pero eso volvería el ejemplo actual más complejo y prefiero que se vea bien el ejemplo):


#esto compila y da nombre al ejecutable final, en nuestro caso le hemos llamado ejemplo
programa: main.o
	gcc -o ejemplo main.o

#esto construye el proyecto
main.o: main.c funcionReferencia.c funcionValor.c prototipos.h 
	gcc -c main.c

Ahora sólo tenemos que situarnos en la carpeta donde tengamos todos los archivos comentados y, en la terminal, tecleamos make

Listo. Te creará el ejecutable que tú quieres, en nuestro caso le hemos llamado ejemplo, desde varios archivos fuente.

Espero que te sea de utilidad.

+1
0
-1