D 编译器 DMD 不链接目标文件

问题描述 投票:0回答:1

我有一个名为“dprogram.d”的 d 源文件,并在 mac osx 上的终端中使用命令 $ dmd dprogram.d 创建可执行文件。根据官方文档,编译器将自动编译源代码并链接 .o 目标文件(http://dlang.org/dmd-linux.html#linking),但似乎没有这样做。

编译器将创建一个 .o 文件,但不是可执行文件,我从终端得到的唯一反馈是一条消息:“gcc:没有这样的文件或目录”,就好像 gcc 尝试链接目标文件但找不到它一样。

在 mac osx 上使用 dmd (digital mars D) 编译器编译 .d 源代码的正确方法是什么?

(编辑:在 Windows 上它确实有效,它会自动创建 .exe,但在 mac osx 上则不然)

macos linker d dmd
1个回答
5
投票

听起来 gcc 要么未正确安装,要么在您的 PATH 中丢失。 dmd 使用 gcc 在底层进行链接,因此如果它不存在,则链接将不起作用。如果您解决了这个问题,那么 dmd 应该将链接作为构建的一部分进行。

© www.soinside.com 2019 - 2024. All rights reserved.