问题标签 [gdc]

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.

0 投票
2 回答
326 浏览

linker - (dlang) 如何使用 gdc 链接 libcurl?

我试图将 libcurl 链接到我的程序,但链接器告诉我一些错误。我检查了是否使用了“-lcurl”选项。我还检查了 libcurl 是否安装正确。我试过的命令是:

链接器告诉我以下错误:

有一些使用官方编译器 dmd 的案例,但我找不到 gdc 的案例。有任何想法吗?

(Ubuntu 14.02 LTS amd64)

0 投票
1 回答
149 浏览

d - DMD 与 GDC 中的 memcmp 和 std.parallelism:并行

我正在实现一个带有指向一些手动管理内存的指针的结构。这一切都适用于 DMD,但是当我使用 GDC 对其进行测试时,它会因opEquals运算符重载而失败。我已将其范围缩小到 memcmp。在opEquals我将指向内存与 memcmp 进行比较时,它在 DMD 中的行为与我预期的一样,但在 GDC 中失败。

如果我返回并opEquals通过使用内置类型一次比较存储在手动管理内存 1 中的每个值来编写该方法==,则它在两个编译器中都有效。我更喜欢 memcmp 路线,因为它写起来更短,而且看起来应该更快(更少的间接、迭代等)。

为什么?这是一个错误吗?

(我使用 C 的经验是 10 年前,从那以后一直在使用 python/java,我在 C 中从未遇到过这种问题,但我并没有用那么多。)

编辑:

我正在比较的内存代表一个“真实”值的二维数组,我只是希望它被分配在一个块中,所以我不必处理锯齿状数组。我将在紧密循环中大量使用这些结构。基本上,我正在滚动我自己的矩阵结构,它将(最终)缓存一些经常使用的值(跟踪、行列式),并为不需要复制它的转置提供备用只读视图。我计划使用大约 10x10 到大约 1000x1000 的矩阵(尽管并不总是正方形)。

我还计划实现一个版本,通过 GC 分配内存ubyte[]并分析这两个实现。

编辑2:

好的,我尝试了几件事。我也有一些parallel循环,我有一种预感,这可能是问题所在。所以我添加了一些版本语句来制作并行和非并行版本。为了让它与 GDC 一起工作,我不得不使用非并行版本并更改realdouble.

在 GDC 下编译的所有案例。但是单元测试失败了,并不总是在同一行上,而是在opEquals我使用realor时始终在通话中parallel。在 DMD 中,所有案例都编译并运行没有问题。

谢谢,

0 投票
1 回答
6490 浏览

d - 使用gdc编译D程序时如何修复“无法识别的选项'-plugin`”?

我为下载了GDCLinux,并尝试构建一个简单的D程序。执行“ gdc hello.d -o hello”后,输出:

然后我使用“ gdc -v hello.d -o hello”命令,并试图找到根本原因。它显示:

似乎collect2无法识别“ -plugin”选项。我尝试了google它,但找不到任何有价值的信息。任何人都可以提出一些建议吗?首先十分感谢!

0 投票
2 回答
128 浏览

d - D不区分大小写的关联数组?

可能吗?我正在使用 vibe.d 构建一个 REST Api 并实现令牌身份验证。因为我不知道用户将在哪种情况下向我发送 Authorization 标头参数,所以我需要以不区分大小写的方式查询它。例如:

可能吗..?

谢谢

0 投票
0 回答
135 浏览

ios - GDC 信号量错误

构建以下 Swift 类以使用 GDC模拟 Java 线程sleep和方法。interruptsleep 方法创建一个信号量,等待它发出信号并true在睡眠过早结束时返回。该interrupt方法向信号量发出信号以使线程脱离睡眠状态:

正如你所看到的,我放了一些 objc_sync_enterand objc_sync_exit(虽然它很可能是多余的),但它没有帮助:使用 iPhone 6 模拟器它工作得很好,但是 iPad Retina 模拟器在dispatch_semaphore_wait. 有什么建议么?

0 投票
1 回答
217 浏览

assembly - 无法使用 GDC 编译 D 程序

我正在尝试使用 GDC 编译 D 程序。我目前在 Windows XP SP3 上,我使用从这里下载的“Windows X86 32bit (i686-w64-mingw32)”包:http: //gdcproject.org/downloads(底部的链接)。因此,当我解压缩二进制文件并调用 gdc 来编译一个像这样的简单程序时:

我得到一堆汇编错误:

http://pastebin.com/1kwU10Tz

我知道指向“不支持的 alpha 版本”的链接,但我真的不明白这条消息的含义(也许你可以告诉我)。但是,尽管如此,我还是尝试从存档中下载早期版本,但都因类似错误而失败。

有没有办法解决这个问题?还是我在这里遗漏了一些关键点。

编辑:这是编译器生成的汇编代码:http: //pastebin.com/w5q0rNNd

0 投票
1 回答
150 浏览

linux - GDMD 编译错误(CA XCOM 服务器)

我真的需要你的帮助。我正在努力编译 Xcom 服务器文件以安装我的 Ubuntu Linux。Xcom 服务器是一个消息服务器,对于多人游戏和消息系统也很有帮助。

当我键入make命令时,它会返回如下错误:

我在linux Ubuntu中。Makefile文件是这样的:

我也可以将所有文件发送给您,请帮助我。我花了 4 天时间,但仍然没有成功。错误如下所示:

在此处输入图像描述

0 投票
1 回答
175 浏览

d - 为什么 GDC 的标准库与 DMD 的 phobos 不同

例如,我无法使用 GDC 5.2.0 (2016-02-05T11:17:49.3234388) 编译导入 std.meta 的程序,因为找不到该文件。

我正在比较 GDC 和 DMD 之间的包含文件夹,我发现版本非常不匹配。

这阻止了我可以放心地使用 GDC。

任何人都知道为什么 GDC 包含的不是同一个 Phobos 库吗?

0 投票
1 回答
235 浏览

d - D - GDC (Dlang) 的更友好的 asm 语法糖

我有一个想法来简化使用 GDC 的扩展 asm 语法创建 D plus asm 代码的过程。我想摆脱在整个地方插入 \n\t 标记的需要,例如,使用单独的字符串并让 D 编译器连接它们。但我对其他建议持开放态度。我的尝试失败了,因为不幸的是连接 D 字符串在编译时在 GDC 中不起作用,我需要 CTFE。正如您所料,这块糖的成本为零。

我怀疑我需要用mixin做点什么。关于去哪里以及如何留在 CTFE 内的任何提示?

0 投票
1 回答
150 浏览

linux - 方法调用顺序混淆

我正在尝试学习 d,所以我从 hello world 开始,并尝试对其进行一些扩展。

所以我希望我的输出如下

但相反我得到了这个

睡眠功能甚至被跳过。怎么了?