问题标签 [dmd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - DMD:链接到 libc.a?或 core.simd 信息?
我猜不,但我想从社区来到这里,因为我对这些东西没有真正的经验。是否可以使用 DMD 与 /etc/lib/libc.a (我在 Linux x64 上)链接?
我的原因是,我正在尝试让硬件 SSE 内在函数工作(除了简单的加法/减法/等),所以如果我能写的话会很棒:
并编译:
但我得到了各种我不知道如何理解的链接错误。再说一次,我猜有什么东西阻止我这样做,但如果不是,我想知道如何去做。
或者...
我真正需要的只是让向量工作。上面的 C 函数在 core.simd 中确实存在(排序),但我无法让它工作(不确定是否有错误,或者我做错了什么)。这是我的简单代码:
但编译器给了我一个:
编译时。有任何想法吗?
reference - DMD2 (D language) how to link with a c library (libdl.so.2)
Im using Eclipse with the DDT plugin and DMD 2.06 as the compiler. When I try to to use functions like dlopen, dlsym usw I get "unresolved reference" errors, in C and GCC I fixed them by linking with -ldl, -lsdl usw... but the DMD2 compiler doesnt have options like that, is there another way to link with specific libraries?
btw I define the C functions the following way
would be happy about any help.
d - 要求解释惯用的 D2 构造
我经常遇到以下我在 D2 源代码中不太掌握的结构:
alias entries this;
鉴于已经存在,类型定义的内部意味着什么Symbol[] entries;
?
d - 如何在 DMD 2.060 下解决此联合尺寸/对齐要求
可以在 DMD 2.059 下编译包含以下代码段的 D2 源代码
不幸的是,在 DMD 2.060 下失败(Prefix.sizeof 等于 12)。
如何修复?
d - 带有 D 2.060 的基本 Windows 应用程序的新编译错误
我使用d-ide与 D 一起开发。
使用D 2.059
编译器版本,项目 Windows 模板编译和运行就像一个魅力。
使用D 2.060
编译器版本,项目 Windows 模板无法编译并出现错误:
以下是代码,感谢您的建议。
d - std.algorithm.joiner(string[],string) - 为什么结果元素是 dchar 而不是 char?
我尝试编译以下代码:
编译以dmd
错误结束:
更改char z
为dchar z
确实修复了错误消息,但我很感兴趣它为什么首先出现。
为什么结果joiner(string[],string).front()
是 dchar 而不是 char?
(文档http://dlang.org/phobos/std_algorithm.html#joiner对此没有任何内容)
d - 无法读取contracts.d
我最近从dmd.2.060.zip 解压缩了子目录 windows 和 src 。然后我尝试import std.contracts;
但编译器不喜欢它:
我也无法手动找到文件。什么坏了?
contract.d 是否已被另一个文件替换?
也许我必须在使用前编译一些东西?
macos - D 编译器 DMD 不链接目标文件
我有一个名为“dprogram.d”的 d 源文件,并在 mac osx 的终端中使用命令 $ dmd dprogram.d 创建可执行文件。根据官方文档,编译器将自动编译源代码并链接 .o 目标文件(http://dlang.org/dmd-linux.html#linking),但似乎没有这样做。
编译器将创建一个 .o 文件,但不是可执行文件,我从终端得到的唯一反馈是一条消息:“gcc:没有这样的文件或目录”,就好像 gcc 试图链接目标文件但找不到它一样。
在 mac osx 上使用 dmd(数字火星 D)编译器编译 .d 源的正确方法是什么?
(编辑:在 Windows 上它确实可以工作,它会自动创建 .exe,但在 mac osx 上它不会)
string - d 编程、解析或将字符串转换为双精度
与其他语言一样简单,我似乎无法在 d 编程语言中找到可以将字符串(例如:“234.32”)转换为双精度/浮点数/实数的选项。
使用 std.c.stdio 库中的 atof 仅在我使用常量字符串时才有效。(例如:atof("234.32")
有效,但atof(tokens[i]);
令牌是带有字符串的动态数组不起作用)。
如何在 d 编程语言中将字符串转换或解析为实数/双精度/浮点数?
gcc - 您可以将 D 目标文件与 C 目标文件链接起来吗?
假设我有两个源文件,一个是用 D 编程语言编写的,另一个是用 C 编程语言编写的。我都只是编译它们,使用 DMD(数字火星 D 编译器)的 D 源和使用 GCC 编译器的 C 源。
结果将是来自不同来源的两个 .o(对象)文件。是否可以将这两个文件链接到一个可执行文件中?