【发布时间】:2009-08-12 19:00:57
【问题描述】:
我正在使用带有 MinGW 的 Code::Blocks 在 Windows XP 中编写我的 C++ 应用程序。 现在我想编译我的代码以在 MS DOS 环境下运行,所以我可以把它放在我的 DOS 格式的软盘上。谁能帮帮我?
提前致谢。
附:我不是指命令提示符,而是真正的 good 旧 MS DOS 操作系统。
【问题讨论】:
标签: c++ mingw dos codeblocks
我正在使用带有 MinGW 的 Code::Blocks 在 Windows XP 中编写我的 C++ 应用程序。 现在我想编译我的代码以在 MS DOS 环境下运行,所以我可以把它放在我的 DOS 格式的软盘上。谁能帮帮我?
提前致谢。
附:我不是指命令提示符,而是真正的 good 旧 MS DOS 操作系统。
【问题讨论】:
标签: c++ mingw dos codeblocks
它已经很老了,但DJGPP 的存在正是为了 DOS 开发。我自 2000 年以来就没有更新过,但它可以工作。
它与MinGW基本相同,但专门用于DOS。
【讨论】:
这是哪一年写的??? (四个月前说。)嗯,不,DJGPP 仍然受支持,它有 G++ 4.4.1(甚至是非官方的 4.4.2)!! libc 本身仍在(非常缓慢地)调整,但即使是 2.03p2“稳定”来自 2002 年,2.04“beta”来自 2003 年。你从哪里得到 2000 年和 GCC 2.96(DJGPP 从未支持,2.96 甚至都不支持官方 FSF 版本,它是 Red Hat 的 fork) 来自????
【讨论】:
我有一个使用 Code::Blocks IDE 和 Open Watcom v2 或 Digital Mars C/C++ 编译器从 Windows 10(或您想要的任何 Windows)开发 MSDOS 程序的设置。 Code::Blocks 内置了对这些编译器的支持,但需要对设置进行一些调整才能使其正确构建用于 DOS。
OpenWatcomv2
Open Watcom 是最容易使用 Code::Blocks 设置的。基本上,按照其网站上的安装说明安装 Open Watcom。然后打开 Code::Blocks 并打开“settings”->“compiler”选择“Open Watcom (W32) Compiler”,进入“toolchain executables”并将其指向Open Watcom正确的可执行文件和目录。
C/C++ compiler: wcl.exe
Dynamic libs: wlink.exe
Static libs: wlib.exe
Resource compiler: wrc.exe
Make program: wmake.exe
在“附加路径”中,确保你把
"[OpenWatcomDir]/binnt"
"[OpenWatcomDir]/binnt64"
...假设您要使用 64 位版本,否则请参阅安装说明
此外,您需要转到“编译器选项”选项卡,然后右键单击->修改“可执行类型选项部分”下的“为 DOS 编译和链接”选项。您需要在“链接器标志”框中添加“系统 dos”,然后点击“确定”。 我相信这是您开始构建 DOS 程序所需要做的一切。只需使用所需的编译器选项(内存模型等)设置一个项目,您就可以开始了。您将需要某种模拟器来测试它们而无需启动 DOS 或其他东西。我推荐 86Box 进行测试,因为它是一个非常准确的模拟器。
【讨论】:
我已经有几十年没有为 MS-DOS 开发了;但我会开始检查 Free-DOS 上使用的工具。也许已经有一个 gcc 包了。
【讨论】: