你好,我需要計算在我的STM32對數。我使用arm-none-eabi-gcc。當我在我的Makefile單片機中添加-L/opt/tools/Sourcery_G++_Lite/arm-none-eabi/lib/
停止工作。不幸的是,我無法調試我的程序,因爲我的設備上沒有debag引腳,我通過bootloader將程序加載到閃存。我不使用庫中的任何數學函數 - 我只是將庫路徑添加到Makefile。 這裏是我的完整的makefile:STM32臂無 - EABI - 海合會鏈接庫
OUTPUTDIR = $(BUILDDIR)/../../output
DEPDIR = $(BUILDDIR)/.dep
PWD = $(shell pwd)
COMMONFLAGS = -mcpu=cortex-m3 -mthumb -ggdb3
CFLAGS += $(COMMONFLAGS) -Os $(INCLUDES) -I.
CFLAGS += -std=c99 -Wall -Wextra -static -fdata-sections -ffunction-sections -fno-hosted -fno-builtin
CFLAGS += -nostdlib -nodefaultlibs
CFLAGS += -mapcs-frame -msoft-float
CFLAGS += -MD -MP -MF $(DEPDIR)/$(@F).d
LDFLAGS = $(COMMONFLAGS) -static
LDFLAGS += -fno-exceptions -ffunction-sections -fdata-sections
LDFLAGS += -static -Xlinker --gc-sections
#LDFLAGS += -L/opt/tools/dima/Sourcery_G++_Lite/arm-none-eabi/lib/
ASFLAGS = $(COMMONFLAGS)
CFLAGS += -DUSE_STDPERIPH_DRIVER
CROSS = /opt/tools/Sourcery_G++_Lite/bin/arm-none-eabi
GCC = $(CROSS)-gcc
AS = $(CROSS)-as
SIZE = $(CROSS)-size
OBJCOPY = $(CROSS)-objcopy
OBJDUMP = $(CROSS)-objdump
NM = $(CROSS)-nm
COBJ = $(addprefix $(BUILDDIR)/, $(CSRC:.c=.c.o))
ASMOBJ = $(addprefix $(BUILDDIR)/, $(ASMSRC:.s=.s.o))
OBJ = $(COBJ) $(ASMOBJ)
V = $(if $(VERBOSE), , @)
all: prebuild $(BUILDDIR)/$(TARGET).elf $(LDSCRIPT)
@$(SIZE) $(BUILDDIR)/$(TARGET).elf
@$(OBJCOPY) -O binary $(BUILDDIR)/$(TARGET).elf $(BUILDDIR)/$(TARGET).bin
@$(OBJCOPY) -O ihex $(BUILDDIR)/$(TARGET).elf $(BUILDDIR)/$(TARGET).hex
@$(OBJDUMP) -h -S -z $(BUILDDIR)/$(TARGET).elf > $(BUILDDIR)/$(TARGET).lss
@$(NM) -n $(BUILDDIR)/$(TARGET).elf > $(BUILDDIR)/$(TARGET).sym
@mkdir -p $(OUTPUTDIR)
@cp $(BUILDDIR)/$(TARGET).bin $(OUTPUTDIR)
@echo =======================================================================
$(BUILDDIR)/$(TARGET).elf: $(OBJ)
@echo Linking [email protected]
$(GCC) $(LDFLAGS) -T $(PWD)/$(LDSCRIPT) -o [email protected] $(OBJ) -lm
$(COBJ): $(BUILDDIR)/%.c.o : %.c
@echo Compiling $<
@-mkdir -p $(@D)
$(GCC) $(CFLAGS) -c $< -o [email protected]
$(ASMOBJ): $(BUILDDIR)/%.s.o : %.s
@echo Assembling $<
@-mkdir -p $(@D)
$(V)$(AS) $(ASFLAGS) -c ./$< -o [email protected]
-include $(shell mkdir -p $(DEPDIR) 2>/dev/null) $(wildcard $(DEPDIR)/*)
.PHONY: clean output
clean:
rm -rf $(BUILDDIR)
我做錯了什麼?謝謝。
它的工作!非常感謝你!當我使用以下庫路徑時:'LDFLAGS + = -L/opt/tools/dima/Sourcery_G ++ _ Lite/arm-none-eabi/lib/thumb2 /'微控制器可以運行程序。 – user3583807 2014-09-24 07:16:17