我正在阅读此Tuto,我正在尝试使用此命令链接应用程序:ld test.o –o test.bin
,链接器无法识别-o
选项:
ld: cannot find –o: No such file or directory
使用ld -help
选项-o
存在,但我不明白为什么我会遇到此问题。
这是链接器版本。
$ ld -version
GNU ld (GNU Binutils for Ubuntu) 2.24
Copyright 2013 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) a later version.
This program has absolutely no warranty.
答案 0 :(得分:0)
我的好眼睛和痛苦的经历告诉我,您必须复制/粘贴来自MS-Office的一些文本,其中短划线(-
)已转换为另一个unicode或其他短划线。注意文本中短划线字符的长度。
实际上,你所指的tuto就是那个有错误的人,就在这一行:
ld –Ttext 0x7c00 --oformat=binary test.o –o test.bin
注意2臭名昭着的长短划线"无法在命令行上运行。
您的命令按原样,然后是重新输入的命令。注意什么?
ld test.o –o test.bin # long dash, fails
ld test.o -o test.bin # good one, short dash
由于破折号不正确,ld
假定这是一个目标文件并尝试打开它,因此出错。