Article View: es.comp.os.linux.programacion
Article #977Makefile me usa CC ¿por defecto?
From: heltena
Date: Tue, 18 Jul 2006 14:01
Date: Tue, 18 Jul 2006 14:01
62 lines
2957 bytes
2957 bytes
Hola grupo,
Tengo los siguientes tipos de ficheros en el proyecto:
*asm.asm -> ficheros en ensamblador (para PIC16f876)
*.inc -> includes de ensamblador
*.h -> versión C de los includes
*.c -> codigo C que se debe compilar para PIC (usando SDCC)
Y tengo el siguiente Makefile:
<<BEGIN>>
OBJS=spi.o spiasm.o pral.o global.o globalasm.o fat32.o fat32asm.o
usart.o usartasm.o
PRJ=enric3
$(PRJ).hex: $(OBJS)
gplink -o $(PRJ) $(OBJS)
%.asm: %.c
sdcc -S -V -mpic14 -p16f877 -c $<
%.o: %.asm *.inc
gpasm -p 16f876 -c $< -D$<
<<END>>
Bien, los pasos deberían ser:
los fichero spi.o, pral.o, global.o fat32.o y usart.o están en C, así
que:
sdcc -mpic14 -p16f877 -c spi.c
...
y me deben generar los ficheros: spi.asm pral.asm ...
Después se ensamblan:
gpasm -p 16f876 -c spi.asm -Dspi.asm
(el -D es un define)
Y después, lo enlazo todo:
gplink -o enric3.hex spi.o spiasm.o ...
Lo que pasa es que, en vez de usar el sdcc que tengo en la regla al
compilar los ficheros C, me ejecuta el cc. Sacado de la shell:
heltena@integer:~/src/pic/enric3$ make
cc -c -o pral.o pral.c
In file included from pral.c:1:
p16f876.h:198: error: syntax error before 'at'
pral.c:3: error: syntax error before numeric constant
pral.c: In function 'main':
pral.c:17: warning: return type of 'main' is not 'int'
make: *** [pral.o] Error 1
Y no solo eso, sino que me pone un "-o pral.o" que no debería ser
así.
Mi prueba ha sido: "bueno, si quieres usar cc, usarás cc" y he puesto
encima del Makefile:
CC=sdcc -S -V -mpic14 -p16f877 -c
Y claro, me lo compila usando el sdcc, pero me lo guarda en, por
ejemplo, "spi.o" y debería ser "spi.asm".
¿qué hago mal en el Makefile?
Technical Details
Message-ID:
<1153231264.317433.191740@75g2000cwc.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!75g2000cwc.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Thread: f86c8,c9be63ee285d36f1,start X-Google-Attributes: gidf86c8,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!75g2000cwc.googlegroups.com!not-for-mail From: "heltena" <heltena@gmail.com> Newsgroups: es.comp.os.linux.programacion Subject: Makefile me usa CC ¿por defecto? Date: 18 Jul 2006 07:01:04 -0700 Organization: http://groups.google.com Lines: 63 Message-ID: <1153231264.317433.191740@75g2000cwc.googlegroups.com> NNTP-Posting-Host: 193.147.222.244 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1153231268 23925 127.0.0.1 (18 Jul 2006 14:01:08 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 18 Jul 2006 14:01:08 +0000 (UTC) User-Agent: G2/0.2 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.4) Gecko/20060406 Firefox/1.5.0.4 (Debian-1.5.dfsg+1.5.0.4-1),gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: 75g2000cwc.googlegroups.com; posting-host=193.147.222.244; posting-account=ljKoDA0AAABEvzHlRrQ7YAIM9PPVxdEL