Foro Oficial De C++

haber te hecho la mano juanfercg esta rapidin :calma:
ALGORITMO (Asi es como me enseñaron a mi):
INICIO
Declar Variables a,b,c;
Hacer:
{
a++;
Imprimir "Dame el primer valor del par numero %d",a
Insertar valor de b
Imprimir "Dame el segundo valor del par numero %d",a
Insertar valor de c
si(b>c)
Imprimir "El mas alto es %d",b
sino
{
si(c==b)
Imprimir "Son iguales"
sino
Imprimir "El mas alto es %d",c
}
}Hasta(a==50);
FIN
Espero te ayude, trae una estructura repetitiva no se si eso te lo hayan enseñado aun



---- Pasando a otra cosa necesito que me hechen la mano con mi programa ando muy acarrerado y ya estoy hata bloqueado, estoy haciendo un juego de agilidad mental en el que tienes que ir metiendo las operaciones contra reloj en el primer modo y en el segundo te da 10 operaciones y te dice cuantas tuviste bien y te evalua, mi problema es que necesito que los numeros para las operaciones varien cada vez que arranca el programa porque si no no tendria chiste, queria usar un valor random pero me ha constado muchisimo encontrar uno que este claro para lo que yo quiero y muchas veces no viene en mi compilador (Borland C++ 4.5 - 5.02), lo habia pensado con el reloj de la compu pero tampoco me ha salido muy bien porque me salen valores muy altos para un ejercicio de agilidad mental, habia pensado en la funcion rand(); con RAND_MAX pero no varian cada vez que arranco el programa :\ entonces ya no se que hacer...
Creo que lo mas sencillo seria hacer un contador del 1-60 y sustituirlo cada vez que corra una operacion el problema se que no se como conectar distintos programas y llamar el valor del contador cuando el usuario llegue a la parte de las operaciones o como meter el contador en el mismo programa y que este contando cada vez en lo que trascurre el programa.
Cualquier ayuda sera eternamente agradecida tambien haber si me pueden echar la mano de como utilizar la funcion "delay" de turbo c++ en borland o una que sea similar porque no he encontrado ninguna para poder hacer el ejercicio contra reloj.
Bueno grax por leer hasta aca les dejo mi codigo

// Juego de Agilidad Mental
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
int a,b,c,d,e,f,r,op,sal;
char nomb[30];
printf("\tBienvenido a la ultima experiencia de en juegos de agilidad mental\n\n");
do{
printf(" Porfavor elije la modalidad del juego\n1)Sobreviviente (Cuantos aciertos seguidos puedes tener contra reloj?)\n2)Standard (20 pruebas logicas.Cuantos aciertos lograras?)\n3)Salir\n");
scanf("%d",&op);
if(op==3)
sal++;
else
if(op>3)
printf("Elije una de las 3 opciones");
else
sal=0;
switch(op)
{
case 1:
e=0;
do{
a=5;
b=5;
d=0;
printf("\nCuanto es %d + %d ?! -> ",a,b);
scanf("%d",& r);
c=a+b;
if (r==c)
{
printf("Correcto! PROXIMA OPERACION!\n");
e++;
}
else
d++;
}while(d==0);
printf("Tu numero de aciertos fue %d\n",e);
break;
case 2:
e=0;
f=0;
d=0;
for(f=0;f<10;f++)
{
a=1;
b=1;
printf("\nCuanto es %d + %d ?! -> ",a,b);
scanf("%d",& r);
c=a+b;
if (r==c)
e++;
else
d++;
}
printf("Tu numero de aciertos fue %d y tu numero de errores fue %d \n",f,d);
break;
default:
printf("\n");
break;
}
}while(sal==0);
}
 
man, esto no es para hacer tareas, ud es el que va a aprender y nosotros somos solo ayudantes... seguro que ud no ha pensado nada... o tiene algo? muestrelo y le corregimos...


Pues dejeme decirle que se equivoca! Primero, no soy MAN y segundo... no puede afirmar que no tengo nada "seguro que ud no ha pensado nada"...

Porque eso en realidad Ud no lo sabe.... Al menos que ud hable de sí mismo en tercera persona :p

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main(){
int Articulos[100][100], Art1,Art2,Art3, ArtT=0,
ArtPor_Vendedor[100];
short int i, j;
char Vendedor[6][10]={"Ana","Lu¡s","Neyda","Oscar","Pablo","Terry"};

for(i=0;i<3;i++){
system("cls");
printf("Vendedor numero %d: %s", i+1,Vendedor);

do{
printf("\n\nIngrese la cantidad de art¡***** 1 vendidos: ");
scanf("%d",&Articulos[1]);
}while (Articulos[1]<0);
Art1= Art1+ Articulos[1];

do{
printf("Ingrese la cantidad de art¡***** 2 vendidos: ");
scanf("%d",&Articulos[2]);
}while (Articulos[2]<0);
Art2=Art2+Articulos[2];

do{
printf("Ingrese la cantidad de art¡***** 3 vendidos: ");
scanf("%d",&Articulos[3]);
}while (Articulos[3]<0);
Art3=Art3+Articulos[3];

ArtPor_Vendedor=(Articulos[1])+(Articulos[2])+(Articulos[3]);
ArtT=Art1+Art2+Art3;

}

system("cls");

for(i=0;i<3;i++){

printf("\n\nVendedor %s, Numero de art¡ticulos vendidos %d",Vendedor, ArtPor_Vendedor);
}
printf("\n\nTotal De Articulos 1 Vendidos %d",Art1);
printf("\n\nTotal De Articulos 2 Vendidos %d",Art2);
printf("\n\nTotal De Articulos 3 Vendidos %d\n\n",Art3);
printf("\n\nLa Cantidad De Art¡***** Vendidos Es: %d\n\n",ArtT);
system("pause");
}

Me falta el punto que dice que Cuàl fue el vendedor que obtuvo la menor venta de ARTS, para ello se me ocurre una comparación entre las posiciones del arreglo, pero en relidad no supe plantearlas Me quede en ...

if (ArtPor_Vendedor>ArtPor_Vendedor[i+1]) /*Y después de allí no sé qué hacer*/

Otra de mis dudas es cómo imprimir el nombre del vendedor que obtuvo la menor cantidad de ventas del Vector Vendedor, Ya que eso está relacionado con la posición en la que esa cantidad fue hallada
 
haber te hecho la mano juanfercg esta rapidin :calma:
ALGORITMO (Asi es como me enseñaron a mi):
INICIO
Declar Variables a,b,c;
Hacer:
{
a++;
Imprimir "Dame el primer valor del par numero %d",a
Insertar valor de b
Imprimir "Dame el segundo valor del par numero %d",a
Insertar valor de c
si(b>c)
Imprimir "El mas alto es %d",b
sino
{
si(c==b)
Imprimir "Son iguales"
sino
Imprimir "El mas alto es %d",c
}
}Hasta(a==50);
FIN
Espero te ayude, trae una estructura repetitiva no se si eso te lo hayan enseñado aun



---- Pasando a otra cosa necesito que me hechen la mano con mi programa ando muy acarrerado y ya estoy hata bloqueado, estoy haciendo un juego de agilidad mental en el que tienes que ir metiendo las operaciones contra reloj en el primer modo y en el segundo te da 10 operaciones y te dice cuantas tuviste bien y te evalua, mi problema es que necesito que los numeros para las operaciones varien cada vez que arranca el programa porque si no no tendria chiste, queria usar un valor random pero me ha constado muchisimo encontrar uno que este claro para lo que yo quiero y muchas veces no viene en mi compilador (Borland C++ 4.5 - 5.02), lo habia pensado con el reloj de la compu pero tampoco me ha salido muy bien porque me salen valores muy altos para un ejercicio de agilidad mental, habia pensado en la funcion rand(); con RAND_MAX pero no varian cada vez que arranco el programa :\ entonces ya no se que hacer...
Creo que lo mas sencillo seria hacer un contador del 1-60 y sustituirlo cada vez que corra una operacion el problema se que no se como conectar distintos programas y llamar el valor del contador cuando el usuario llegue a la parte de las operaciones o como meter el contador en el mismo programa y que este contando cada vez en lo que trascurre el programa.
Cualquier ayuda sera eternamente agradecida tambien haber si me pueden echar la mano de como utilizar la funcion "delay" de turbo c++ en borland o una que sea similar porque no he encontrado ninguna para poder hacer el ejercicio contra reloj.
Bueno grax por leer hasta aca les dejo mi codigo

PHP:
// Juego de Agilidad Mental
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
	int a,b,c,d,e,f,r,op,sal;
   char nomb[30];
	printf("\tBienvenido a la ultima experiencia de en juegos de agilidad mental\n\n");
   do{
   	printf(" Porfavor elije la modalidad del juego\n1)Sobreviviente (Cuantos aciertos seguidos puedes tener contra reloj?)\n2)Standard (20 pruebas logicas.Cuantos aciertos lograras?)\n3)Salir\n");
      scanf("%d",&op);
      if(op==3)
      	sal++;
      else
         if(op>3)
         	printf("Elije una de las 3 opciones");
         else
      		sal=0;
   	switch(op)
         {
      		case 1:
   				e=0;
					do{
						a=5;
						b=5;
						d=0;
						printf("\nCuanto es %d + %d ?! -> ",a,b);
						scanf("%d",& r);
						c=a+b;
						if (r==c)
							{
								printf("Correcto! PROXIMA OPERACION!\n");
								e++;
							}
						else
							d++;
	 				}while(d==0);
					printf("Tu numero de aciertos fue %d\n",e);
        		break;
   		case 2:
      		 	e=0;
               f=0;
               d=0;
                  for(f=0;f<10;f++)
                  {
						a=1;
						b=1;
						printf("\nCuanto es %d + %d ?! -> ",a,b);
						scanf("%d",& r);
						c=a+b;
						if (r==c)
                  	e++;
						else
							d++;
                  }
            printf("Tu numero de aciertos fue %d y tu numero de errores fue %d \n",f,d);
				break;
   		default:
      		printf("\n");
         break;
		}
	}while(sal==0);[/QUOTE]
}

Man, busquese unas paginas atras, ayude a un man con un juego de piedra papel y tijera, en este hay un ramdon, si mal no recuerdo lo hice en DEV C++ y si lo hice en DEV dudo que ud. no lo pueda hacer en el de borland ;)


Pues dejeme decirle que se equivoca! Primero, no soy MAN y segundo... no puede afirmar que no tengo nada "seguro que ud no ha pensado nada"...

Porque eso en realidad Ud no lo sabe.... Al menos que ud hable de sí mismo en tercera persona :p

PHP:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main(){
int Articulos[100][100], Art1,Art2,Art3, ArtT=0,
ArtPor_Vendedor[100];
short int i, j;
char Vendedor[6][10]={"Ana","Lu¡s","Neyda","Oscar","Pablo","Terry"};
 
for(i=0;i<3;i++){
system("cls");
printf("Vendedor numero %d: %s", i+1,Vendedor[i]);
 
do{
printf("\n\nIngrese la cantidad de art¡***** 1 vendidos: ");
scanf("%d",&Articulos[i][1]);
}while (Articulos[i][1]<0);
Art1= Art1+ Articulos[i][1];
 
do{
printf("Ingrese la cantidad de art¡***** 2 vendidos: ");
scanf("%d",&Articulos[i][2]);
}while (Articulos[i][2]<0);
Art2=Art2+Articulos[i][2];
 
do{
printf("Ingrese la cantidad de art¡***** 3 vendidos: ");
scanf("%d",&Articulos[i][3]);
}while (Articulos[i][3]<0);
Art3=Art3+Articulos[i][3];
 
ArtPor_Vendedor[i]=(Articulos[i][1])+(Articulos[i][2])+(Articulos[i][3]);
ArtT=Art1+Art2+Art3;
 
}
 
system("cls");
 
for(i=0;i<3;i++){
 
printf("\n\nVendedor %s, Numero de art¡ticulos vendidos %d",Vendedor[i], ArtPor_Vendedor[i]);
}
printf("\n\nTotal De Articulos 1 Vendidos %d",Art1);
printf("\n\nTotal De Articulos 2 Vendidos %d",Art2);
printf("\n\nTotal De Articulos 3 Vendidos %d\n\n",Art3);
printf("\n\nLa Cantidad De Art¡***** Vendidos Es: %d\n\n",ArtT);
system("pause"); 
}

Me falta el punto que dice que Cuàl fue el vendedor que obtuvo la menor venta de ARTS, para ello se me ocurre una comparación entre las posiciones del arreglo, pero en relidad no supe plantearlas Me quede en ...

if (ArtPor_Vendedor>ArtPor_Vendedor[i+1]) /*Y después de allí no sé qué hacer*/

Otra de mis dudas es cómo imprimir el nombre del vendedor que obtuvo la menor cantidad de ventas del Vector Vendedor, Ya que eso está relacionado con la posición en la que esa cantidad fue hallada


Hola moon, el programa esta algo enrredado, pero ahi mas o menos lo entiendo.... primera vez que veo a una chika fajada con C++ :p, por ciero, creo que no es necesario usar arreglos bidimensinales, y se podria hacer en una par de ciclos for anidados... ahi se ahorra muchas lineas de codigo y puedes reutilizar muy bien las variables..., desde que tenga un tiempecito tratare de acerte un ejemplito, asi se suma y hasta se podria buscar cual es el mayor volar y el menor en el arreglo que se guardan los numeros ;)


SuerteX :)
 
Buenos dias amigos laneros, ahora mismo me encuentro haciendo la tesis, y me pusieron a hacer un programita de un modelo matematico, yo no soy de ingenieria de sistemas ni de una carrera afín, pero ahi mas o menos le jalo a la programacion, tengo el programa listo pero el director de la tesis me sugirió que las variables se leyeran desde un archivo externo (de un archivo de notepad o de un archivo de excel), estoy usando borland c++ builder en modo consola. Alguien me puede decir cuales son los comandos para hacer eso?
 
Buenos dias amigos laneros, ahora mismo me encuentro haciendo la tesis, y me pusieron a hacer un programita de un modelo matematico, yo no soy de ingenieria de sistemas ni de una carrera afín, pero ahi mas o menos le jalo a la programacion, tengo el programa listo pero el director de la tesis me sugirió que las variables se leyeran desde un archivo externo (de un archivo de notepad o de un archivo de excel), estoy usando borland c++ builder en modo consola. Alguien me puede decir cuales son los comandos para hacer eso?

si es de un archivo de texto..
Código:
libreria iomanip.h

declaras 
archivo a*;
char a[50],b[50],c[50];

archivo=fopen("tu_archivo.txt","r");   //r de lectura, para escritura seria a
while(!feof(archivo)){
  fscanf(archivo,"%s %s %s",a,b,c);
  //aqui ya vienen los datos del block de notas a,b,c
}
fclose(archivo);


asi mas o menos seria.. no estoy ocn builder ahor amismo, depornot se me paso un detalle.
eso solo lee.. para escribir.. seria fprintf y archivo=fopen("tu_archivo.txt","a"); y ya el while no haria falta.

ademas tambien puedes usar archivos .ini bueno eso es otro cuento..
lo de archivos excel.. si me da time para bsucar en mi equipo te colaboro.
bueno no siendo mas... exitos..
 
  • Me gusta
Reacciones: 2 personas
Pues dejeme decirle que se equivoca! Primero, no soy MAN y segundo... no puede afirmar que no tengo nada "seguro que ud no ha pensado nada"...

Porque eso en realidad Ud no lo sabe.... Al menos que ud hable de sí mismo en tercera persona :p

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main(){
int Articulos[100][100], Art1,Art2,Art3, ArtT=0,
ArtPor_Vendedor[100];
short int i, j;
char Vendedor[6][10]={"Ana","Lu¡s","Neyda","Oscar","Pablo","Terry"};

for(i=0;i<3;i++){
system("cls");
printf("Vendedor numero %d: %s", i+1,Vendedor);

do{
printf("\n\nIngrese la cantidad de art¡***** 1 vendidos: ");
scanf("%d",&Articulos[1]);
}while (Articulos[1]<0);
Art1= Art1+ Articulos[1];

do{
printf("Ingrese la cantidad de art¡***** 2 vendidos: ");
scanf("%d",&Articulos[2]);
}while (Articulos[2]<0);
Art2=Art2+Articulos[2];

do{
printf("Ingrese la cantidad de art¡***** 3 vendidos: ");
scanf("%d",&Articulos[3]);
}while (Articulos[3]<0);
Art3=Art3+Articulos[3];

ArtPor_Vendedor=(Articulos[1])+(Articulos[2])+(Articulos[3]);
ArtT=Art1+Art2+Art3;

}

system("cls");

for(i=0;i<3;i++){

printf("\n\nVendedor %s, Numero de art¡ticulos vendidos %d",Vendedor, ArtPor_Vendedor);
}
printf("\n\nTotal De Articulos 1 Vendidos %d",Art1);
printf("\n\nTotal De Articulos 2 Vendidos %d",Art2);
printf("\n\nTotal De Articulos 3 Vendidos %d\n\n",Art3);
printf("\n\nLa Cantidad De Art¡***** Vendidos Es: %d\n\n",ArtT);
system("pause");
}

Me falta el punto que dice que Cuàl fue el vendedor que obtuvo la menor venta de ARTS, para ello se me ocurre una comparación entre las posiciones del arreglo, pero en relidad no supe plantearlas Me quede en ...

if (ArtPor_Vendedor>ArtPor_Vendedor[i+1]) /*Y después de allí no sé qué hacer*/

Otra de mis dudas es cómo imprimir el nombre del vendedor que obtuvo la menor cantidad de ventas del Vector Vendedor, Ya que eso está relacionado con la posición en la que esa cantidad fue hallada


pues si lo se, porque tambien se programar.... sino que aqui hay unos duros en el tema ;)
y pues para lo de tu pregunta, debes colocar menor=999999 o un numero mayor... de tal manera que cuando haya un numero menor a 999999 te lo sobreescriba con ese numero menor ;) no se si me di a entender :p :p :p

y pues se me olvido que ud es una niña, disculpeme ;)

salu2.
 
....Otra de mis dudas es cómo imprimir el nombre del vendedor que obtuvo la menor cantidad de ventas del Vector Vendedor, Ya que eso está relacionado con la posición en la que esa cantidad fue hallada...

bueno perdon que me meta pero me parece una buena preunta...y como todo tiene varias formas de solucionarse una seria ordenar el arreglo con una burbuja o algo pero eso ya es complicarse demasiado...lo mas simple seria usar una vandera que guarde el indice del vendedor con menos ventas...asi digamos
Código:
int i,j,x,y; 

int cantidad = Matriz[0][0]; //inicializa arbitrariamente la bandera.

x = 0; //se inicializan arbitrariamente los indices.
y = 0;

for(i = 0; i < n; i++)
{
 for(j = 0; j < m; j++) //se recorre la matriz
 {
   if(cantidad < Matriz[i][j]) //se evalua un valor menor para la bandera
   {
    cantidad = Matriz[i][j]; //se actualiza la bandera.
    x = i; //se actualizan los indices.
    y = i;    
   }
 }
}


esto te asegura que una vez terminada de recorrer la matriz tengas en cantidad el menor numero de ventas y en x y los indices del dato...con los que puedes localizar al bendedor....suerte pos.
 
mas ayuda donde....si me hubiera fijado en este foro cuando vi programacion, me hubieran sacado de apuros mas de una vez.
 
}[/php]

Man, busquese unas paginas atras, ayude a un man con un juego de piedra papel y tijera, en este hay un ramdon, si mal no recuerdo lo hice en DEV C++ y si lo hice en DEV dudo que ud. no lo pueda hacer en el de borland ;)




Hola moon, el programa esta algo enrredado, pero ahi mas o menos lo entiendo.... primera vez que veo a una chika fajada con C++ :p, por ciero, creo que no es necesario usar arreglos bidimensinales, y se podria hacer en una par de ciclos for anidados... ahi se ahorra muchas lineas de codigo y puedes reutilizar muy bien las variables..., desde que tenga un tiempecito tratare de acerte un ejemplito, asi se suma y hasta se podria buscar cual es el mayor volar y el menor en el arreglo que se guardan los numeros ;)


SuerteX :)


Hola! Pues como se nota que ud no trata con chicas... En mi clase, la mayoría de las chicas programan mucho mejor que los chicos jejejeje

En cuanto a su comentario, tiene ud razón, pero el prof exigió que se usara matriz. Dejó muy claro que una tiene que hacer lo que el pide en el enunciado y no lo que a una le parezca o convenga.
 
Hola! Pues como se nota que ud no trata con chicas... En mi clase, la mayoría de las chicas programan mucho mejor que los chicos jejejeje

En cuanto a su comentario, tiene ud razón, pero el prof exigió que se usara matriz. Dejó muy claro que una tiene que hacer lo que el pide en el enunciado y no lo que a una le parezca o convenga.

No es que no trate con chicas, sino que en la uni a las chicas cuando le hablan de programacion se aterrorizan y muchos hombre tambien :confused: ... en cambio se ven mas chikos que se inclinan por la programacion como yo :p .... Bienvenida al grupo tonces, y no dude preguntar, cualquier duda tratare de ayudarte ;)


Ahhh... y como te dije creo que con 2 For anidados se resuelve muchisimo ;)


SuerteX :)
 
Hola a todos.

Tengo los codigos fuentes de un programa en C, cuyo makefile esta configurado para compilarse con gcc, necesito hacer que este programa me compile usando g++ (He ledido que g++ compila c normal), necesito hacer esto porque debo integrar este programa a otro desarrollado con c++ (y compilado con g++)

intente hacer lo trivial de reemplazar g++ por gcc en el makefile pero saca muchos errores.

Aqui pongo aspectos importante del makefile original del programa (Con el que compila perfecto)

Código:
INC=include
SRC=src
OBJ=obj

PLATFORM= $(shell echo `uname`)

# Defaults
CC=gcc 
CFLAGS=-I$(INC) -O3
LDFLAGS=-lm

# Linux
ifeq ($(PLATFORM), Linux)
    CC=gcc
    CFLAGS=-I$(INC) -O3 -mcpu=pentiumpro -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
    LDFLAGS=-lm  -L/usr/lib
endif

# Mac
ifeq ($(PLATFORM), Darwin)
    CC=gcc 
    CFLAGS=-I$(INC) -pipe -O2 -no-cpp-precomp -Wno-long-double
    LDFLAGS=-lm
endif

# Sun
ifeq ($(PLATFORM), SunOS)
    CC=gcc 
    CFLAGS=-I$(INC) -O2
    LDFLAGS=-lm
endif

#Debug
#CFLAGS=-I$(INC) -g

OBJFILES= $(OBJ)/alignments.o $(OBJ)/bytepackGappedScoring.o $(OBJ)/descriptions.o $(OBJ)/encoding.o $(OBJ)/fasterGappedExtension.o $(OBJ)/gappedExtension.o $(OBJ)/gappedScoring.o $(OBJ)/nuGappedScoring.o $(OBJ)/global.o $(OBJ)/hitMatrix.o $(OBJ)/karlin.o $(OBJ)/memBlocks.o $(OBJ)/memSingleBlock.o $(OBJ)/nucleotideLookup.o $(OBJ)/oldGappedScoring.o $(OBJ)/oldSemiGappedScoring.o $(OBJ)/parameters.o $(OBJ)/print.o $(OBJ)/PSSMatrix.o $(OBJ)/qPosList.o $(OBJ)/readFasta.o $(OBJ)/readFile.o $(OBJ)/scoreMatrix.o $(OBJ)/semiGappedScoring.o $(OBJ)/statistics.o $(OBJ)/ungappedExtension.o $(OBJ)/wordLookupDFA.o $(OBJ)/writeFile.o $(OBJ)/constants.o $(OBJ)/smithWatermanTraceback.o $(OBJ)/smithWatermanScoring.o $(OBJ)/tableGappedScoring.o $(OBJ)/vbyte.o $(OBJ)/unpack.o $(OBJ)/index.o $(OBJ)/postings.o $(OBJ)/hashcounter.o $(OBJ)/writedb.o $(OBJ)/readdb.o $(OBJ)/search.o $(OBJ)/wildcards.o $(OBJ)/dust.o $(OBJ)/seg.o
HEADERFILES= $(INC)/alignments.h $(INC)/blast.h $(INC)/bytepackGappedScoring.h $(INC)/descriptions.h $(INC)/encoding.h $(INC)/fasterGappedExtension.h $(INC)/gappedExtension.h $(INC)/nuGappedScoring.h $(INC)/gappedScoring.h $(INC)/global.h $(INC)/hitMatrix.h $(INC)/karlin.h $(INC)/memBlocks.h $(INC)/memSingleBlock.h $(INC)/nucleotideLookup.h $(INC)/oldGappedScoring.h $(INC)/oldSemiGappedScoring.h $(INC)/parameters.h $(INC)/print.h $(INC)/PSSMatrix.h $(INC)/qPosList.h $(INC)/readFasta.h $(INC)/readFile.h $(INC)/scoreMatrix.h $(INC)/semiGappedScoring.h $(INC)/statistics.h $(INC)/ungappedExtension.h $(INC)/wordLookupDFA.h $(INC)/writeFile.h $(INC)/constants.h $(INC)/smithWatermanTraceback.h $(INC)/smithWatermanScoring.h $(INC)/tableGappedScoring.h $(INC)/vbyte.h $(INC)/unpack.h $(INC)/index.h $(INC)/postings.h $(INC)/hashcounter.h $(INC)/writedb.h $(INC)/readdb.h $(INC)/search.h $(INC)/wildcards.h $(INC)/dust.h $(INC)/seg.h
SRCFILES= $(SRC)/alignments.c $(SRC)/blast.c $(SRC)/bytepackGappedScoring.c $(SRC)/descriptions.c $(SRC)/encoding.c $(SRC)/fasterGappedExtension.c $(SRC)/gappedExtension.c $(SRC)/gappedScoring.c $(SRC)/nuGappedScoring.c $(SRC)/global.c $(SRC)/hitMatrix.c $(SRC)/karlin.c $(SRC)/memBlocks.c $(SRC)/memSingleBlock.c $(SRC)/nucleotideLookup.c $(SRC)/oldGappedScoring.c $(SRC)/oldSemiGappedScoring.c $(SRC)/parameters.c $(SRC)/print.c $(SRC)/PSSMatrix.c $(SRC)/qPosList.c $(SRC)/readFasta.c $(SRC)/readFile.c $(SRC)/scoreMatrix.c $(SRC)/semiGappedScoring.c $(SRC)/statistics.c $(SRC)/ungappedExtension.c $(SRC)/wordLookupDFA.c $(SRC)/writeFile.c $(SRC)/constants.c $(SRC)/smithWatermanTraceback.c $(SRC)/smithWatermanScoring.c $(SRC)/tableGappedScoring.c $(SRC)/vbyte.c $(SRC)/unpack.c $(SRC)/index.c $(SRC)/postings.c $(SRC)/hashcounter.c $(SRC)/writedb.c $(SRC)/readdb.c $(SRC)/search.c $(SRC)/wildcards.c $(SRC)/dust.c $(SRC)/seg.c
all: blast formatdb readdb ssearch cluster

blast: $(OBJ)/blast.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o blast $(OBJ)/blast.o $(OBJFILES)
ssearch: $(OBJ)/ssearch.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o ssearch $(OBJ)/ssearch.o $(OBJFILES)
blast-debug: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -g -o blast-debug $(SRCFILES)
blast1: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -DNO_STAGE2 -o blast1 $(SRCFILES)
blast12: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -DNO_STAGE3 -o blast12 $(SRCFILES)
blast123: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -DNO_STAGE4 -o blast123 $(SRCFILES)
blast-bitlookup: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -DBITLOOKUP -o blast-bitlookup $(SRCFILES)
verboseBlast: $(SRC)/blast.c $(SRCFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -DVERBOSE -o verboseBlast $(SRCFILES)
formatdb: $(OBJ)/formatdb.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o formatdb $(OBJ)/formatdb.o $(OBJFILES)
createindex: $(OBJ)/createindex.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o createindex $(OBJ)/createindex.o $(OBJFILES)
readdb: $(OBJ)/readdbApp.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o readdb $(OBJ)/readdbApp.o $(OBJFILES)
chooseWilds: $(OBJ)/chooseWilds.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o chooseWilds $(OBJ)/chooseWilds.o $(OBJFILES)
dust: $(OBJ)/dustApp.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o dust $(OBJ)/dustApp.o $(OBJFILES)
printDescription: $(OBJ)/printDescription.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o printDescription $(OBJ)/printDescription.o $(OBJFILES)
cluster: $(OBJ)/cluster.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o cluster $(OBJ)/cluster.o $(OBJFILES)
rsdb: $(OBJ)/rsdb.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o rsdb $(OBJ)/rsdb.o $(OBJFILES)
readNcbidb: $(OBJ)/readNcbidb.o $(OBJFILES)
	$(CC) $(CFLAGS) $(LDFLAGS) -o readNcbidb $(OBJ)/readNcbidb.o $(OBJFILES)

$(OBJ)/chooseWilds.o: $(SRC)/chooseWilds.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/chooseWilds.o $(SRC)/chooseWilds.c
$(OBJ)/readdbApp.o: $(SRC)/readdbApp.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/readdbApp.o $(SRC)/readdbApp.c
$(OBJ)/dustApp.o: $(SRC)/dustApp.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/dustApp.o $(SRC)/dustApp.c
$(OBJ)/printDescription.o: $(SRC)/printDescription.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/printDescription.o $(SRC)/printDescription.c
$(OBJ)/formatdb.o: $(SRC)/formatdb.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/formatdb.o $(SRC)/formatdb.c
$(OBJ)/createindex.o: $(SRC)/createindex.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/createindex.o $(SRC)/createindex.c
$(OBJ)/blast.o: $(SRC)/blast.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/blast.o $(SRC)/blast.c
$(OBJ)/cluster.o: $(SRC)/cluster.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/cluster.o $(SRC)/cluster.c
$(OBJ)/rsdb.o: $(SRC)/rsdb.c $(SRC)/identityAlign.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/rsdb.o $(SRC)/rsdb.c
$(OBJ)/readNcbidb.o: $(SRC)/readNcbidb.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/readNcbidb.o $(SRC)/readNcbidb.c

$(OBJ)/alignments.o: $(SRC)/alignments.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/alignments.o $(SRC)/alignments.c
$(OBJ)/bytepackGappedScoring.o: $(SRC)/bytepackGappedScoring.c $(SRC)/fasterBytepackGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/bytepackGappedScoring.o $(SRC)/bytepackGappedScoring.c
$(OBJ)/constants.o: $(SRC)/constants.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/constants.o $(SRC)/constants.c
$(OBJ)/descriptions.o: $(SRC)/descriptions.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/descriptions.o $(SRC)/descriptions.c
$(OBJ)/encoding.o: $(SRC)/encoding.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/encoding.o $(SRC)/encoding.c
$(OBJ)/gappedExtension.o: $(SRC)/gappedExtension.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/gappedExtension.o $(SRC)/gappedExtension.c
$(OBJ)/fasterGappedExtension.o: $(SRC)/fasterGappedExtension.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/fasterGappedExtension.o $(SRC)/fasterGappedExtension.c
$(OBJ)/gappedScoring.o: $(SRC)/gappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/gappedScoring.o $(SRC)/gappedScoring.c
$(OBJ)/nuGappedScoring.o: $(SRC)/nuGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/nuGappedScoring.o $(SRC)/nuGappedScoring.c
$(OBJ)/global.o: $(SRC)/global.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/global.o $(SRC)/global.c
$(OBJ)/hitMatrix.o: $(SRC)/hitMatrix.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/hitMatrix.o $(SRC)/hitMatrix.c
$(OBJ)/karlin.o: $(SRC)/karlin.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/karlin.o $(SRC)/karlin.c
$(OBJ)/memBlocks.o: $(SRC)/memBlocks.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/memBlocks.o $(SRC)/memBlocks.c
$(OBJ)/memSingleBlock.o: $(SRC)/memSingleBlock.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/memSingleBlock.o $(SRC)/memSingleBlock.c
$(OBJ)/nucleotideLookup.o: $(SRC)/nucleotideLookup.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/nucleotideLookup.o $(SRC)/nucleotideLookup.c
$(OBJ)/oldGappedScoring.o: $(SRC)/oldGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/oldGappedScoring.o $(SRC)/oldGappedScoring.c
$(OBJ)/oldSemiGappedScoring.o: $(SRC)/oldSemiGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/oldSemiGappedScoring.o $(SRC)/oldSemiGappedScoring.c
$(OBJ)/parameters.o: $(SRC)/parameters.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/parameters.o $(SRC)/parameters.c
$(OBJ)/print.o: $(SRC)/print.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/print.o $(SRC)/print.c
$(OBJ)/PSSMatrix.o: $(SRC)/PSSMatrix.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/PSSMatrix.o $(SRC)/PSSMatrix.c
$(OBJ)/qPosList.o: $(SRC)/qPosList.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/qPosList.o $(SRC)/qPosList.c
$(OBJ)/readFasta.o: $(SRC)/readFasta.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/readFasta.o $(SRC)/readFasta.c
$(OBJ)/readFile.o: $(SRC)/readFile.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/readFile.o $(SRC)/readFile.c
$(OBJ)/scoreMatrix.o: $(SRC)/scoreMatrix.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/scoreMatrix.o $(SRC)/scoreMatrix.c
$(OBJ)/semiGappedScoring.o: $(SRC)/semiGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/semiGappedScoring.o $(SRC)/semiGappedScoring.c
$(OBJ)/statistics.o: $(SRC)/statistics.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/statistics.o $(SRC)/statistics.c
$(OBJ)/ungappedExtension.o: $(SRC)/ungappedExtension.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/ungappedExtension.o $(SRC)/ungappedExtension.c
$(OBJ)/wordLookupDFA.o: $(SRC)/wordLookupDFA.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/wordLookupDFA.o $(SRC)/wordLookupDFA.c
$(OBJ)/writeFile.o: $(SRC)/writeFile.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/writeFile.o $(SRC)/writeFile.c
$(OBJ)/smithWatermanTraceback.o: $(SRC)/smithWatermanTraceback.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/smithWatermanTraceback.o $(SRC)/smithWatermanTraceback.c
$(OBJ)/smithWatermanScoring.o: $(SRC)/smithWatermanScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/smithWatermanScoring.o $(SRC)/smithWatermanScoring.c
$(OBJ)/tableGappedScoring.o: $(SRC)/tableGappedScoring.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/tableGappedScoring.o $(SRC)/tableGappedScoring.c
$(OBJ)/vbyte.o: $(SRC)/vbyte.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/vbyte.o $(SRC)/vbyte.c
$(OBJ)/unpack.o: $(SRC)/unpack.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/unpack.o $(SRC)/unpack.c
$(OBJ)/index.o: $(SRC)/index.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/index.o $(SRC)/index.c
$(OBJ)/hashcounter.o: $(SRC)/hashcounter.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/hashcounter.o $(SRC)/hashcounter.c
$(OBJ)/postings.o: $(SRC)/postings.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/postings.o $(SRC)/postings.c
$(OBJ)/writedb.o: $(SRC)/writedb.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/writedb.o $(SRC)/writedb.c
$(OBJ)/readdb.o: $(SRC)/readdb.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/readdb.o $(SRC)/readdb.c
$(OBJ)/search.o: $(SRC)/search.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/search.o $(SRC)/search.c
$(OBJ)/wildcards.o: $(SRC)/wildcards.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/wildcards.o $(SRC)/wildcards.c
$(OBJ)/ssearch.o: $(SRC)/blast.c $(HEADERFILES)
	$(CC) $(CFLAGS) -DSSEARCH -c -o $(OBJ)/ssearch.o $(SRC)/blast.c
$(OBJ)/dust.o: $(SRC)/dust.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/dust.o $(SRC)/dust.c
$(OBJ)/seg.o: $(SRC)/seg.c $(HEADERFILES)
	$(CC) $(CFLAGS) -c -o $(OBJ)/seg.o $(SRC)/seg.c

clean:
	rm -f blast blast-debug blast1 blast12 blast123 ssearch formatdb dust printDescription readdb verboseBlast $(OBJ)/* cluster rsdb chooseWilds createindex readNcbidb simpleCluster

El error obtenido usando reemplazando gcc por g++ es el siguiente:

Código:
++ -Iinclude -O3 -mcpu=pentiumpro -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -c -o obj/blast.o src/blast.c
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
src/blast.c: In function ‘void blast_search(char*, PSSMatrix, char*)’:
src/blast.c:201: aviso: convirtiendo a ‘int32_t’ desde ‘double’
src/blast.c:210: aviso: convirtiendo a ‘int32_t’ desde ‘double’
src/blast.c:211: aviso: convirtiendo a ‘int32_t’ desde ‘double’
g++ -Iinclude -O3 -mcpu=pentiumpro -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -c -o obj/alignments.o src/alignments.c
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
include/unpack.h: In function ‘void alignments_initialize()’:
include/unpack.h:5: error: demasiados argumentos para function ‘void unpack_initialize()’
src/alignments.c:33: error: en este punto en el fichero
src/alignments.c: In function ‘void alignments_addGoodAlignment(int32_t, alignment*)’:
src/alignments.c:424: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_addFinalAlignment(int32_t, alignment*)’:
src/alignments.c:438: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_getFinalAlignmentDescriptions()’:
src/alignments.c:622: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_printFinalAlignments()’:
src/alignments.c:643: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_printGoodAlignments()’:
src/alignments.c:660: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_free()’:
src/alignments.c:734: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_loadSubjectsIntoMemory(PSSMatrix)’:
src/alignments.c:887: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:891: aviso: convirtiendo a ‘int32_t’ desde ‘float’
src/alignments.c:898: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:914: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:931: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘void alignments_findTopFinalAlignments(PSSMatrix)’:
src/alignments.c:1012: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1015: aviso: convirtiendo a ‘int32_t’ desde ‘float’
src/alignments.c:1022: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1041: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1087: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1135: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1139: aviso: convirtiendo a ‘int32_t’ desde ‘float’
src/alignments.c: In function ‘void alignments_findFinalAlignments(PSSMatrix)’:
src/alignments.c:1163: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1176: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘int alignments_expandCluster(alignment*, PSSMatrix)’:
src/alignments.c:1226: error: conversión inválida de ‘int32_t*’ a ‘uint32_t*’
src/alignments.c:1226: error:   argumento de inicialización 5 de ‘child* readdb_getChildren(unsigned char*, uint32_t, uint32_t, uint32_t, uint32_t*)’
src/alignments.c: In function ‘void alignments_getTracebacks(PSSMatrix)’:
src/alignments.c:1303: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1318: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1355: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1457: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c:1485: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
src/alignments.c: In function ‘int alignments_isFinalAlignment(uint32_t)’:
src/alignments.c:1518: error: conversión inválida de ‘void*’ a ‘finalAlignment*’
include/ungappedExtension.h: At global scope:
include/ungappedExtension.h:36: aviso: se usa la función inline ‘void ungappedExtension_findSeed(ungappedExtension*, PSSMatrix, unsigned char*)’ pero nunca se definió
include/memSingleBlock.h:22: aviso: se usa la función inline ‘void* memSingleBlock_newEntry(memSingleBlock*)’ pero nunca se definió
include/memSingleBlock.h:25: aviso: se usa la función inline ‘void memSingleBlock_resetCurrent(memSingleBlock*)’ pero nunca se definió
include/memSingleBlock.h:28: aviso: se usa la función inline ‘void* memSingleBlock_getCurrent(memSingleBlock*)’ pero nunca se definió
include/memSingleBlock.h:31: aviso: se usa la función inline ‘void* memSingleBlock_getEntry(memSingleBlock*, int32_t)’ pero nunca se definió
include/memBlocks.h:34: aviso: se usa la función inline ‘void memBlocks_resetCurrent(memBlocks*)’ pero nunca se definió
include/memBlocks.h:40: aviso: se usa la función inline ‘void memBlocks_free(memBlocks*)’ pero nunca se definió
include/memBlocks.h:37: aviso: se usa la función inline ‘void* memBlocks_getCurrent(memBlocks*)’ pero nunca se definió
include/memSingleBlock.h:34: aviso: se usa la función inline ‘void* memSingleBlock_getLastEntry(memSingleBlock*)’ pero nunca se definió
make: *** [obj/alignments.o] Error 1

Existe algun parametro que se le pueda pasar al g++ para que tenga compactibilidad completa con gcc?

Agradezco cualquier ayuda
 
Hola a todos.

Tengo los codigos fuentes de un programa en C, cuyo makefile esta configurado para compilarse con gcc, necesito hacer que este programa me compile usando g++ (He ledido que g++ compila c normal), necesito hacer esto porque debo integrar este programa a otro desarrollado con c++ (y compilado con g++)

intente hacer lo trivial de reemplazar g++ por gcc en el makefile pero saca muchos errores.

Existe algun parametro que se le pueda pasar al g++ para que tenga compactibilidad completa con gcc?

Agradezco cualquier ayuda


dale:

make -o file file.cpp

si estas en linux eso debe servirte eso si fijate si tienes todas las liberrias y soportes yo sufria por lo mismo...le instale una tal glibcc y con make me funciona de perlas.
 
Gracias por tu respuesta Sairus.

Tengo una duda, el programa que te comento consta de muchos archivo .c y .h, deberia hacer esto para cada uno de los archivo .c?, adicionalmente estoy leyendo que la opcion -o del make es para suponer que un archivo es muy viejo por lo tanto no lo reconstruye, me podrias explicar por favor como esto solucionaria el problema?

Gracias por tu ayuda
 
a ver una preguntilla...
para modificar un obdc en tiempo de ejecución, en builder?
ya tengo como crearlo, pero aun no logro modificarlo..
gracias... salu2
 
Gracias por tu respuesta Sairus.

Tengo una duda, el programa que te comento consta de muchos archivo .c y .h, deberia hacer esto para cada uno de los archivo .c?, adicionalmente estoy leyendo que la opcion -o del make es para suponer que un archivo es muy viejo por lo tanto no lo reconstruye, me podrias explicar por favor como esto solucionaria el problema?

Gracias por tu ayuda

bueno primero si son .c para que usas make con gcc basta el make es para los .cpp es decir source de c++, en cuanto a los .h hasta donde se esos no se compilan puesto que solo son rutias de ordenes...lo otro es que si tienes varios archivos de codigo tenes que compilarlos todos pos seguro unonecesita de otro claro en cuyo caso es mejor crear clases...ahora la funcion -o es como decir output ("creo") y es solo una opcion de preferencia del make o el gcc cosa de leer el manual dale make help y te sale para que sirve....bueno suerte pos.
 
beuno bros tengo la intriga de la vida....como hace uno ventanitas en c++...es decir ventanitas como las de windos asi como la del word o la del block de notas...se supone que eso se hizo en c...pero como eso me intriga en sobre manera.....toy seguro que es con una libreria de soporte asi como la OpenGl para los juegos pero cual es....alguien la conoce laguien ha hecho ventanas de ese tipo....gracias pos.
 
beuno bros tengo la intriga de la vida....como hace uno ventanitas en c++...es decir ventanitas como las de windos asi como la del word o la del block de notas...se supone que eso se hizo en c...pero como eso me intriga en sobre manera.....toy seguro que es con una libreria de soporte asi como la OpenGl para los juegos pero cual es....alguien la conoce laguien ha hecho ventanas de ese tipo....gracias pos.

Con las API de los SO es como se hace esto ;)... en Windows se hace con esto http://winapi.conclase.net/ en linux no te sabria decir, aunque nunca lo he hecho :S


Por cierto, tengo Xubuntu instalado, pretendo leer los manuales desde ahi y practicar, alguien me podria recomendar algun compilador... que se vea como Dev C++ o similar

SuerteX :)
 
Con las API de los SO es como se hace esto ;)... en Windows se hace con esto http://winapi.conclase.net/ en linux no te sabria decir, aunque nunca lo he hecho :S


Por cierto, tengo Xubuntu instalado, pretendo leer los manuales desde ahi y practicar, alguien me podria recomendar algun compilador... que se vea como Dev C++ o similar

SuerteX :)

bien revisare...esos apis....en cuanto a lo del compilador...la verdad en mi mandriva uso el gcc con la libreria glibcc y compilo con make....aunque como dirian los pesados en linux...no hay como el emacs...asi que te aconsej poner el gcc con todas sus librerias y editar con emacs...suerte bro.