Wieso geht das nicht?: # List C source files here. (C dependencies are automatically generated.) SRC = main.c ../can/mcp2515.c ../avr/spi.c arp.c icmp.c ip.c net.c netstack.c rtl8019.c
Compiling C: ../can/mcp2515.c avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -DF_CPU=4000000UL -Os -funsigned-char -f unsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wundef -Wa,-adhlns=obj/../can/mcp2515.lst -I../avr -I../can -std=gnu99 -Wundef -MD -MP -MF .dep/mcp2515.o.d ../can/mcp2515.c -o obj/../can/mcp2515.o Assembler messages: FATAL: can't create obj/../can/mcp2515.o: No such file or directory make: *** [obj/../can/mcp2515.o] Error 1 Da müsste es doch irgendein macro für geben?
Der Ansatz mit den obj-Subdirs funktioniert nicht, wenn man die Quellen über ..-Verzeichnisse reinziehen will. Sinnvollerweise installiert man das Makefile ja auch im Toplevel, d. h. alle Quellen liegen unterhalb. Wenn das nicht geht, muss man auf die obj-Unterverzeichnisse verzichten, dann sollte auch wieder alles funktionieren.
Gibt's da kein makefile macro das den pfad wegstrippt? Wenn ich nämlich auf das obj-unterverzeichnis verzichte gibt's probleme mit den dependencies. Oder tut er die compiler optionen bei den dependencies inzwischen mit einberechnen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.