arm-none-eabi-ld:参数列表太长
arm-non-eabi-ld: Argument list too long
我正在尝试解决我的项目的问题。简而言之,我的 makefile 中有一个变量,其中包含要链接的 .o 文件的名称。变量变得太大,现在导致 Argument list too long 错误。我的 makefile 中有问题的行是:
@arm-none-eabi-ld -T layout.ld -o @$ $^
问题是变量 $^
扩展太大,我收到一条错误消息,指出 "arm-none-eabi-ld: Argument list too long".
我试图解决此问题的方法是将参数作为文件传递,但我不确定如何传递。
我试过的是:
@arm-none-eabi-ld -T layout.ld -o @$ <$^
@arm-none-eabi-ld -T layout.ld -o @$ | xargs `cat $^`
也尝试过:
@echo $^ >temp.txt
@arm-none-eabi-ld -T layout.ld -o @$ <temp.txt
我认为最后一个有潜力,但说 "no input files"。
我找到了解决方案:
@echo "INPUT($^)" > $(TEMP_LD)
@$(LD) $(LDFLAGS) -o $@ -T $(TEMP_LD)
我正在尝试解决我的项目的问题。简而言之,我的 makefile 中有一个变量,其中包含要链接的 .o 文件的名称。变量变得太大,现在导致 Argument list too long 错误。我的 makefile 中有问题的行是:
@arm-none-eabi-ld -T layout.ld -o @$ $^
问题是变量 $^
扩展太大,我收到一条错误消息,指出 "arm-none-eabi-ld: Argument list too long".
我试图解决此问题的方法是将参数作为文件传递,但我不确定如何传递。 我试过的是:
@arm-none-eabi-ld -T layout.ld -o @$ <$^
@arm-none-eabi-ld -T layout.ld -o @$ | xargs `cat $^`
也尝试过:
@echo $^ >temp.txt
@arm-none-eabi-ld -T layout.ld -o @$ <temp.txt
我认为最后一个有潜力,但说 "no input files"。
我找到了解决方案:
@echo "INPUT($^)" > $(TEMP_LD)
@$(LD) $(LDFLAGS) -o $@ -T $(TEMP_LD)