我在Windows环境中使用GNU工具链...我的工具链是使用内置的CYGWIN dll预先构建的,所以我没有安装CYGWIN ......
我的问题是:如何在GNU-linker的链接器命令中指定我的lib路径.. 下面是我的Makefile,当我运行它时,它会返回一条消息,说明无法找到路径......
...
LD = arm-elf-ld
AR = arm-elf-ar
...
...
libdir = C:\My Project\My library\
CCFLAGS = -c -mcpu=cortex-m3 -mthumb -O0 -g -Wall
ASMFLAGS = -mcpu=cortex-m3 -mthumb --gdwarf-2
LDFLAGS = -T mylinkerscript.ld -L $(libdir)
ARFLAGS = rc
all: m3.elf
m3.elf: startup.o main.o libGPIO.a
$(LD) $(LDFLAGS) startup.o main.o -lGPIO -o $@
...
...
谢谢。
答案 0 :(得分:1)
我在您的代码中看到两个潜在的问题:
因此,尝试两件事:
LDFLAGS = -T mylinkerscript.ld -L "$(libdir)"
即。添加引号以将其标记为单个参数而不是单独的单词。并尝试满足Cygwins反斜杠问题:
libdir = /cygdrive/c/My Project/My library
或
libdir = "C:\\My Project\\My library"
答案 1 :(得分:0)
libdir = C:\\My\ Project\\My\ library
或
libdir = C:/My\ Project/My\ library
或
libdir = /cygdrive/c/My\ Project/My\ library