2

所以,我正在开发一个操作系统,现在我只在汇编中编写代码。我希望继续使用 C/C++ 制作它。我使用的编译器/编辑器是 FASM(适用于 Windows)。我尝试过使用 MinGW,但是在链接 fasm 的 .o 文件时会出错。如何继续使用 Assembly 和 C/C++ 进行开发?另外,我在互联网上搜索了很多,但我没有找到解决方案。

编辑:这是我正在使用的制作批处理文件:

cls
echo off

fasm.exe los.asm losasm.o
pause
cls
"C:\MinGW\bin\gcc.exe" -nostdlib  los.cpp -o loscpp.o
pause
cls
"C:\MinGW\bin\gcc.exe" -o "C:\Users\helder\Desktop\Lemperyum OperativeSystem I\los" -o -nostdlib losasm.o loscpp.o
pause
cls

pause
4

1 回答 1

1

FASM 倾向于直接生成可执行文件作为其输出,默认为“平面二进制输出”(参见手册)。要创建目标文件,您必须使用命令行选项之一

  • format COFF 或者
  • format ELF

您选择哪种取决于其他工具。副手,我不确定 MinGW 输出什么类型的文件。

于 2014-07-06T05:23:29.170 回答