【问题标题】:DDT error: D Standard Library [Error: none found]DDT 错误:D 标准库 [错误:未找到]
【发布时间】:2014-09-12 15:31:55
【问题描述】:

我已经按照说明安装了 dmd 和 ddt:

DMD64 D Compiler v2.066.0
Copyright (c) 1999-2014 by Digital Mars written by Walter Bright
Documentation: http://dlang.org/

但是当我在 Eclipse 中创建一个配音项目时,我点了一个错误,提示找不到标准库:


(来源:p.im9.eu

有什么想法吗?

操作系统:Mac OSX 10.9 日食:4.4 滴滴涕:0.10.2

【问题讨论】:

  • DDT 多年来没有积极开发。

标签: eclipse macos d ddt


【解决方案1】:

我还在讨论组 (link) 中发布了一个临时解决方法:

# cd /usr/share/dmd
# mkdir dummy
# mkdir dummy/bin
# touch dummy/bin/dmd
# launchctl setenv DUB_COMPILERS_PATH /usr/share/dmd/dummy/bin
# killall Dock

请注意,DUB_COMPILERS_PATH 变量不应指向二进制文件本身,它就像一个附加的 PATH 变量,即应包含 bin 目录。

要使其在重新启动后仍然存在,请将 launchctl 行添加到 /etc/launchd.conf:

launchctl setenv DUB_COMPILERS_PATH /usr/share/dmd/dummy/bin

如果它不存在,您可能需要创建它。

【讨论】:

    【解决方案2】:

    这似乎是 DDT 的一个报告错误:

    https://github.com/bruno-medeiros/DDT/issues/75

    基本上,归结为已安装 dmd 的目录结构。由于它们有许多发行版和许多安装程序,每个都有自己的约定,DDT 错过了一些。

    它们应该在即将发布的版本中添加和识别。

    请关注 github/DDT 页面上报告的问题。

    【讨论】:

    • 酷。那我就等下个版本吧。顺便问一下,可以用ldc2代替dmd吗?
    • @qed:编译,是的,因为编译通过dub,它几乎可以识别所有编译器。对于 IDE 支持,我认为也是,是的。之前版本的 IIRC、gdc、ldc 和 dmd 被正确识别。如果功能还没有实现,相信很快就会实现。
    • 编译器 DDT 找到什么并不重要,因为在 IDE 中它只使用编译器的标准库源文件,在不同的编译器中应该几乎相同。只有在编译(调用dub)的时候,使用哪个编译器才会有区别。
    • 请注意,目前,ldc 是 dmd 之后的一个版本(2.0.65 / 2.0.66),并且存在一些小的但有意义的差异,例如Range.sum()
    • 啊,是的,你是对的。只有编译器/语言版本相同才没有区别,否则有区别。
    【解决方案3】:

    是的,我知道这个线程真的很老了,是的,DDT 似乎不再处于开发阶段。

    但是,对于我们这些不熟悉 D、Eclipse 和 DDT 以及使用 Linux 的新手(我使用的是 Mint 19.3)的人来说,我有以下解决方案对我有用。毫无疑问,这是某处的常识,但我不得不费力地摸索很多才能发现这一点。 (当然,你的 dmd 版本号可能不同。)

    1. 请注意,dub 会与 dmd 一起自动安装在:
      $HOME/dlang/dmd-2.090.1/linux/bin64/dub

    2. 命令
      source ~/dlang/dmd-2.090.1/activate
      将修改 $PATH 变量以允许访问编译器。
      注意,这只会更改发出命令的 shell 的路径...并且仅适用于当前会话!

    3. 如果您希望路径更改是永久性的(谁不呢?),请使用文本编辑器将以下内容添加到 ~/.profile 中,例如nano ~/.profile 或 xed ~/.profile 等:
      # Add dlang dmd compiler path if [ -d "$HOME/dlang/dmd-2.090.1/linux/bin64" ] ; then PATH="$HOME/dlang/dmd-2.090.1/linux/bin64:$PATH" fi

      这更正了 Eclipse 错误:
      “D 标准库 [错误:未找到]”
      在项目树中,并且还允许从任何目录运行配音,
      例如从终端。

    HTH。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      • 2011-03-27
      • 2015-10-19
      • 1970-01-01
      • 2013-04-19
      • 2016-02-16
      • 2016-02-06
      相关资源
      最近更新 更多