Problem mit Makefile

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
klaus
Beiträge: 102
Registriert: 09.06.2003 11:32:10

Problem mit Makefile

Beitrag von klaus » 04.12.2006 15:04:31

Moin,

ich habe ein Problem mit einem Makefile.
GNU Make 3.81(Debian testing) kommt dabei zum Einsatz,
der Compiler ist avr-gcc.

Und zwar wird folgender Fehler ausgegeben

Code: Alles auswählen

-------- begin --------
avr-gcc (GCC) 4.1.0
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

make: *** Keine Regel vorhanden, um das Target »HeDiWet.elf«,
  benötigt von »elf«, zu erstellen.  Schluss.
wenn die Source-Liste zu lang wird. (>4 Dateien)
Wenn die letzten beiden Dateien nicht eingetragen sind funktioniert es?!

# List C source files here. (C dependencies are automatically
generated.)
SRC = $(TARGET).c lcd.c uart.c ds1302.c ee24xx.c helpfunction.c


Dürfen nur eine gewisse Anzahl an Dateien eingefügt werden,
oder darf die Länge der Namen nur eine bestimmte Anzahl an Buchstaben
haben?

Vielen Dank
Matthias

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 04.12.2006 20:48:38

"gnu make" hat kein festes Limit, wird aber natürlich vom verfügbaren Speicher limitiert.
Die Aufrufe von Programmen ( wie z.B. avr-gcc) werden über die Shell erledigt und dort gibt es eine maximale Länge der Command-Line, die allerdings in der Größenordung von 128k liegt.
Nachdem dieses Limit bei dir sicher nicht erreicht wird, liegt der Fehler entweder beim Zusammenspiel zwischen "avr-gcc" und den binutils-avr" oder es gibt einen Fehler im Makefile.

Ersteres kannst du leicht ausprobieren, indem du den Aufruf des "avr-gcc" versuchsweise einmal manuell absetzt.

Gruß
gms

Antworten