我正在为ld使用“--verbose”试图找到有用的东西来查找问题,但它在打印正常的“--verbose”输出中打印错误信息:
[...blah - dump of linker script...]
attempt to open blah1.o succeeded
blah1.o
attempt to open blah2.o succeeded
blah2.o
[...blah - more opens that succeeded...]
attempt to open blah9.o succeeded
blah9.o
attemcollect2: ld returned 1 exit status
由:
调用gcc blah1.o [...blah...] blah9.o blahLib1.a blahLib2.a -g -lc -nostdlib -Wl,--warn-constructors -fpic -fno-pic -Wl,-q -Wl,-gc-sections -Wl,--verbose -T blahScript.ld -lm -o blahProgram.elf
答案 0 :(得分:1)
这是一般错误。通常由未定义的符号引用引起。
我认为你不需要 - 看到错误。 ld应该在任何情况下打印错误原因。尝试在没有--verbose的情况下运行它并仔细检查输出的每一行。
答案 1 :(得分:0)
首先,我今天遇到了同样的问题。原因是磁盘空间不足。在这种情况下,“ ld”似乎只是返回退出代码1,根本没有打印任何消息。增加可用磁盘空间可解决此问题。