I just starting with using Eclipse+CDT+YAGARTO to develop for ARM and I am running into a problem with the makefile generation built into CDT. the makefiles generated add quotation makes at a point that breaks make/gcc.
To simplify the problem I have stripped down the subdir.mk for the project/Debug directory. the code :
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
# Add inputs and outputs from these tool invocations to the build variables
C_SRCS += \
../main.c
OBJS += \
./main.o
C_DEPS += \
./main.d
# Each subdirectory must supply rules for building sources it contributes
main.o: ..\main.c
@echo 'Building file: $<'
@echo 'Invoking: ARM Yagarto Windows GCC C Compiler'
arm-none-eabi-gcc "$<"
@echo 'Finished building: $<'
@echo ' '
When make is run form the command line on the above file I get
c:\project\Debug>make
Building file: ..\main.c
Invoking: ARM Yagarto Windows GCC C Compiler
arm-none-eabi-gcc "..\main.c"
arm-none-eabi-gcc.exe: no input files
make: *** [main.o] Error 1
If I run the arm-none-eabi-gcc "..\main.c" line directly from the command line it works. Editing the subdir.mk to remove the double quotes around "$<" and replace with single quotes or no quotes resolves the problem and gcc runs:
c:\project\Debug>make
Building file: ..\main.c
Invoking: ARM Yagarto Windows GCC C Compiler
arm-none-eabi-gcc ..\main.c
In file included from ..\main.c:46:0:
..\/hw.h:41:23: fatal error: cpu/types.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1
the errors on the further includes are fine -its because I stripped down the gcc command to the base minimum.
So can anyone point me in the direction of resolving this. After a lot of searching I cant find other reported issues with the double quotes which makes me thing this is a obscure configuration error in Eclipse/CDT. I have been over the project settings with a fine tooth comb and cannot see anything. The project is too big for me to manually change the make files.