linux - i386 输入文件架构与 i386 不兼容 :x86-64

我正在尝试使用 Ubuntu 创建一个简单的内核。在我输入的终端中

ld -Ttext 0x1000 -o kernel.bin loader.o main.o Video.o

但我收到以下错误消息:

ld: i386 architecture of input file `loader.o' is incompatible with i386:x86-64 output
ld: warning: cannot find entry symbol _start; defaulting to 0000000000001000

最佳答案

如果要将文件编译为 32 位,可以使用:

ld -m elf_i386 -s -o file file.o

https://stackoverflow.com/questions/19200333/

相关文章:

linux - 如何准确复制文件夹

linux - 如何确认 RedHat Enterprise Linux 版本?

linux - 如何使用 echo 编写非 ASCII 字符?

regex - sed 将线条连接在一起

linux - 如何仅使用 SED 获得第二行

linux - 将node.js + expressjs应用程序的NODE_ENV设置为ubuntu

mysql - Mac上的libmysqlclient15-dev?

linux - 如何从 Bash 中对包含公共(public)前缀和后缀的字符串进行数字排序?

linux - 如何递归列出某个位置的所有目录,广度优先?

c - 我应该调用什么 API 来获得系统正常运行时间?