【问题标题】:exe can't be run in dos modeexe不能在dos模式下运行
【发布时间】:2017-11-08 05:26:35
【问题描述】:

我正在为一个爱好项目用 C 编程,我想在 DOSbox 中运行它。我有一个 64 位系统,我正在使用 gcc 编译。

我正在使用stdlib.hstdio.hstring.h

运行.exe 时出现错误“此程序无法在 DOS 模式下运行”。 我环顾四周,它说我需要使用一些特定的库来维护跨平台,那么我应该保留还是不保留呢?我对 c 很陌生,我应该使用批处理文件还是其他东西?

【问题讨论】:

  • 您需要使用该平台的编译器对其进行编译。现在你已经为 Windows 编译了它,所以得到一个针对 DOS 的 gcc。

标签: c windows gcc


【解决方案1】:

DOS 不是 Windows。

DOS 不支持一些特定于 Windows 的库和 API。因此,为 Windows 编译的可执行文件无法在 DOS 下运行。

你需要告诉你的编译器你想要编译for DOS。这也可以在 Windows 上完成。它被称为交叉编译。 我知道的唯一可以针对 DOS 的编译器(仍然可用)是 Borland C 编译器(BCC)。 BCC 适用于 Windows 和 Linux。

TurboC 编译器也使用 Borland C 编译器。 有些版本的 Turbo C 可以很好地与 DOSbox 配合使用(因为您正在使用它)。

话虽如此,除非有强烈的约束迫使您为 DOS 进行编译(例如学校/学院的限制,或者您必须为某些非常旧的系统进行开发),否则我建议您转向针对目标的更新更好的编译器视窗。

【讨论】:

    猜你喜欢
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多