Создал сначала свой мейк файл, отладил на нем свою демку, потом перескочил на эклипс, научился компилить сишные проекты, вроде нормально, решил подсоеденить стартап, и тут затык, выдает ошибку :
Код
/usr/local/arm-elf/bin/../lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: ERROR: ./asm_71x_init.o uses hardware FP, whereas Leee uses software FP
/usr/local/arm-elf/bin/../lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: failed to merge target specific data of file ./asm_71x_init.o
/usr/local/arm-elf/bin/../lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: ERROR: ./asm_71x_vect.o uses hardware FP, whereas Leee uses software FP
/usr/local/arm-elf/bin/../lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: failed to merge target specific data of file ./asm_71x_vect.o
вскрыл мейк эклипса, в написанном собственноручно мейке проставил флаги и забил команды компиляции как и в эклипсовском, и тем не менее мой мейк работает, а эклипс нет.
вот сам мейк (для скрипта линкеру пришлось указать путь, ибо без пути в своей папке эклипс его не видит):
Код
PROG = "oNO" # Program name
SRCC= vect.c init.c 71x_it.c flash.c gpio.c rccu.c uart.c main.c
OBJ= vect.o init.o 71x_it.o flash.o gpio.o rccu.o uart.o main.o
vect=asm_71x_vect.s
init=asm_71x_init.s
CC=/usr/local/arm-elf/bin/arm-elf-gcc # Compiler
AS=/usr/local/arm-elf/bin/arm-elf-as
LD=/usr/local/arm-elf/bin/arm-elf-ld
CFLAGS=-g -c # Compiler flags
ASFLAGS=-mcpu=arm7tdmi --gdwarf2
LDFLAGS = -nostartfiles -nodefaultlibs -nostdlib -T /home/Temp/ProbeXt/RAM.ld
LIBS= -L/usr/local/arm-elf/lib/gcc/arm-elf/4.3.1/ -lgcc # Linker flags
LIBSTM= -L/usr/local/arm-elf/lib/gcc/arm-elf/4.3.1/thumb/ -lgcc # Linker flags
# Compile sources
oNO: $(OBJ)
$(LD) $(LDFLAGS) -o $(PROG) $(OBJ) $(LIBS) $(LIBSTM)
init.o: asm_71x_init.s
arm-elf-as -mcpu=arm7tdmi --gdwarf2 -o"$@" "$<"
vect.o: asm_71x_vect.s
SRCC: $(src_file)
for src_file in $(SRCC); do
obj_file=$(src_file /.c /.o)
$(CC) -nostdinc -O0 -g -Wall -c -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -o"$@" "$<"
done
.PHONY: clean
clean:
rm $(OBJ) oNO
Прогнал все настроечные файлы проекта, и где включается поддержка FPoint не нашел.
еще что интересно, что когда вместо линкера и асемблера я ставлю ГЦЦ появляется другая ошибка, он, компилируя стартап, кричит что не может найти опорную метку маин, как тут ему обьяснить что по "В main" надо переходить на головную функцию
И еще, дайте ссылку на эклипсовский проект под str71x если есть
Сообщение отредактировал Хомячог - May 23 2008, 10:50