PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PIC18F - SDCC-Problem



galdo
24.03.2007, 11:50
Hallo,

ich habe folgendes Problem beim compilieren mit dem SDCC. Es geht um Code für den PIC 18F2550. Ich habe den SDCC ohne irgendwelche Flags (aktuelle SVN-Version) auf einer SuSE-Linux Kiste compiliert. Beim Aufruf von make erhalte ich folgende Fehlermeldung:


galdo@linux-92dg:~/repository/rob_galdo/cam_modul> make
/usr/local//bin/sdcc -DUSB_USE_UART -DRIGHT -DDEBUG_UART -DDEBUG -DDEBUG_PRINT --use-crt=crt0.o -V -Wl-s18f2550.lkr,-m -mpic16 -p18f2550 mod_i2c.o mod_pwm.o cam_slave.o -o cam_modul.hex -llibio18f2550.lib -llibc18f.lib
+ "/usr/local//bin/gplink" -I"/usr/local//bin/../share/sdcc/lib/pic16" -I"/usr/local/share/sdcc/lib/pic16" -s18f2550.lkr -m -w -r -o cam_modul.hex mod_i2c.o mod_pwm.o cam_slave.o crt0.o libio18f2550.lib libc18f.lib pic18f2550.lib libsdcc.lib
crt0.o: No such file or directory
make: *** [cam_modul.hex] Fehler 1


So sieht mein Makefile aus, und auf anderen Rechner funktioniert das eigentlich auch so:

# change this to your program name
PROG_NAME = cam_modul.hex
# list your object files
OBJS = mod_i2c.o mod_pwm.o cam_slave.o

DEBUG = -DUSB_USE_UART -DRIGHT -DDEBUG_UART -DDEBUG -DDEBUG_PRINT

PIC_TYPE = PIC18F2550
sdcc_PIC_TYPE = 18f2550
lkr_PIC_TYPE = 18f2550
TOOLSDIR = /usr/local/
CC = $(TOOLSDIR)/bin/sdcc
CFLAGS = -mpic16 -V -p$(sdcc_PIC_TYPE) $(DEBUG)
LNK = $(TOOLSDIR)/bin/sdcc
INC = -I.
LDFLAGS =
CRT = --use-crt=crt0.o -V
#DEBUG = --denable-peeps --obanksel=9 --opt-code-size --optimize-cmp --optimize-df --fstack

all: cam_modul.hex

.c.o:
$(CC) $(CFLAGS) $(INC) -c $<

#rule to link the final executable
$(PROG_NAME): $(OBJS)
$(LNK) $(DEBUG) $(LDFLAGS) $(CRT) -Wl-s$(lkr_PIC_TYPE).lkr,-m -mpic16 -p$(sdcc_PIC_TYPE) $+ -o $(@) -llibio$(sdcc_PIC_TYPE).lib -llibc18f.lib
#
prog: $(PROG_NAME)
piklab-prog --programmer=direct --port=/dev/parport0 --device=$(sdcc_PIC_TYPE) --command=program $(PROG_NAME)

clean:
rm -f *.o *.rel *.lst *.cod *.hex *.map *.asm


Habt ihr irgendwelche Ideen? Vielen Dank
GALDO