我在 Windows 7 上使用 DMD 编译器。我只是尝试创建一个全新的 D 文件并编译它,并且会从 DMD 获得一个巨大错误转储。最终,我将文件削减回模块声明 (
module tournament;
),然后我从 DMD 收到以下错误:
OPTLINK : Warning 23: No Stack
OPTLINK : Warning 134: No Start Address
现在,我完全不知道是什么原因造成的。有人可以帮助我吗?我使用的命令是
dmd tournament.d
与正在编译的文件位于同一目录中。
错误消息来自链接器 - 默认情况下,编译您指定的模块后,编译器将调用链接器将目标文件链接到可执行文件。如果您指定的模块不包含入口点(主函数),链接器将抱怨。您可以通过向编译器提供
-c
开关来抑制调用链接器。
请参阅此答案了解更多信息。