🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #18633

Re: Compilar varios *.c juntos??

#18633
From: Matmota
Date: Sat, 07 Aug 1999 00:00
58 lines
2314 bytes
Jordi wrote:
> 
> He hecho un programa formado por dos ficheros .c y uno .h
> 
> �C�mo los compilo todos juntos con gcc?
> 
> El equivalente en Windows ser�a hacer un proyecto en compilador de C.

	En unix lo cl�sico es make. Para eso, haces un archivo con nombre
"makefile" (el equivalente del fichero de proyecto), en el que le
especificas c�mo construir el proyecto a partir de los ficheros fuente.
(man make, info make)

	Por ejemplo, para compilar un proyecto compuesto por los siquientes
ficheros:
- Fichero1.h
- Fichero1.c, que necesita Fichero1.h
- Fichero2.c, que tambi�n necesita Fichero1.h

	El makefile podr�a ser algo as�: (entre las l�neas de corte)
------------------------8<--------------------
CC=gcc
CCOPTS=-Wall -O3 -m486 -malign-double
EJECUTABLE=nombre_ejecutable

all: Fichero1.o Fichero2.o
	$(CC) $(CCOPTS) Fichero1.o Fichero2.o -o $(EJECUTABLE)

Fichero1.o: Fichero1.h Fichero1.c
	$(CC) $(CCOPTS) -c Fichero1.c

Fichero2.o: Fichero1.h Fichero2.c
	$(CC) $(CCOPTS) -c Fichero2.c

clean:
	rm -f *.o
	rm -f $(EJECUTABLE)
------------------------8<---------------------

	Para compilar, escribir�as:

make

	Y para dejar s�lo las fuentes, sin binarios:

make clean

	Naturalmente es s�lo una de las casi infinitas formas de construir un
proyecto con make.
	Si lo que quieres es usar s�lo gcc, tal vez podr�as hacerlo con:

gcc -c Fichero1.c Fichero2.c
gcc Fichero1.o Fichero2.c -o nombre_ejecutable

	En fin, como todo en Un*x, hay tropecientas posibilidades.

	Espero que te sirva de algo,
		Matmota at linuxfreak.com
Technical Details
Message-ID: <37AC7151.25C743EC@usa.net>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <37AB8109.FE4A1AE7@nexo.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,1796d232360d17ea
X-Google-Attributes: gidf86c8,public
From: Matmota <alberto-gonzalez@usa.net>
Subject: Re: Compilar varios *.c juntos??
Date: 1999/08/07
Message-ID: <37AC7151.25C743EC@usa.net>
X-Deja-AN: 510053514
Distribution: es
Content-Transfer-Encoding: 8bit
References: <37AB8109.FE4A1AE7@nexo.es>
X-Accept-Language: en
Content-Type: text/plain; charset=iso-8859-1
X-Complaints-To: newsmanager@rediris.es
X-Trace: batcher.rediris.es 934063121 31145 62.81.97.137 (7 Aug 1999 21:58:41 GMT)
Organization: -
Mime-Version: 1.0
NNTP-Posting-Date: 7 Aug 1999 21:58:41 GMT
Newsgroups: es.comp.os.linux.programacion