【问题标题】:MinGW compile for MS DOSMinGW 为 MS DOS 编译
【发布时间】:2009-08-12 19:00:57
【问题描述】:

我正在使用带有 MinGW 的 Code::Blocks 在 Windows XP 中编写我的 C++ 应用程序。 现在我想编译我的代码以在 MS DOS 环境下运行,所以我可以把它放在我的 DOS 格式的软盘上。谁能帮帮我?

提前致谢。

附:我不是指命令提示符,而是真正的 good 旧 MS DOS 操作系统。

【问题讨论】:

    标签: c++ mingw dos codeblocks


    【解决方案1】:

    它已经很老了,但DJGPP 的存在正是为了 DOS 开发。我自 2000 年以来就没有更新过,但它可以工作。

    它与MinGW基本相同,但专门用于DOS。

    【讨论】:

    • 我同意这是最好的选择,但我不会在它编译现代、惯用的 C++ 代码上投入任何资金。
    • 哦,我可以保证不会。如果没有记错的话,它只有 GCC 2.96。除非有人在 GCC 3.x 系列上维护 DOS 目标,否则这是唯一的选择。
    • DJGPP 与 MinGW 没有任何共同之处,只是它们都是 g++ 端口
    【解决方案2】:

    这是哪一年写的??? (四个月前说。)嗯,不,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) 来自????

    【讨论】:

      【解决方案3】:

      我有一个使用 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 进行测试,因为它是一个非常准确的模拟器。

      【讨论】:

        【解决方案4】:

        我已经有几十年没有为 MS-DOS 开发了;但我会开始检查 Free-DOS 上使用的工具。也许已经有一个 gcc 包了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-02-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-19
          • 2011-05-21
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多