问题标签 [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.
linux - 是否有一个目录可以放置广告文件以便编译器自动包含它?
我是 D 编程语言的新手,想在 D 中使用 ncurses。我找到了一个很好的 ncurses 的 D 端口,但我希望能够在任何源文件中导入它而无需编写:
有什么办法可以让我每次都包含它吗?
顺便说一句,我在 debian Gnu/Linux 上使用 gdc。
linux - 如何在 linux 中使用 D 编程语言取消缓冲输入?
默认情况下,如果不等待用户按下回车,您无法在 Unix 中获得终端输入。如何立即获得输入?我在 debian Linux 上使用 gdc,所以我不能使用 ncurses。谢谢。
d - 在 GDC 中无法捕获从 Phobos 引发的异常
我写了一个小D程序。使用 DMD 编译时,它可以正常工作,但 GDC 和 LDC2 都不能捕获从 Phobos 抛出的异常(由 GDB 证明)。我该如何解决?
示例代码:
即使 catch 块应该捕获 ProcessException,它在编译和执行时也会随着 SIGABRT 而死。
编译器:ldc2 基于 LLVM 3.3 和 DMD 2.063.2(通过 ldmd2 -O -inline -release 调用),但也适用于 gdc 4.8.2(通过 gdmd -O -inline -release 调用)。当我使用 dmd -O -inline -release 编译时,即使我只捕获 ProcessException 而不是 Throwable,也会捕获该 execption。
attributes - @nogc 属性是否在 d 中实现?
我用 D 语言编写了一个计算斐波那契数的小程序。它应该是最有效的,因为我这样做是为了将 D 的执行速度与其他语言的执行速度进行比较。然后我在 dlang.org(这里: http ://dlang.org/attribute#nogc)上阅读了@nogc 属性,并尝试像这样使用它:
我尝试使用 DMD 2.065 和 GDC 4.8.2 但都告诉我:Error: undefined identifier nogc
难道我做错了什么 ?@nogc 现在还没有实施吗?
d - dmd 和 gdc 编译代码不同?
我目前正在尝试DerelictSDL2(与 D 的 SDL2 库的绑定),并且我编写了一个成功加载 JPG 图像并将其显示在窗口中的代码。也就是说,当它使用 dmd 编译时。当我尝试使用 gdc (并且没有修改代码)时,它会编译但不会在运行时加载图像。
我相信我做对了:
SDL_Init(SDL_INIT_VIDEO)
然后
IMG_Init(IMG_INIT_JPG)
在那之后的某个地方
this.data = IMG_LoadTexture(Window.renderer, name.ptr)
其中Window.renderer
是(显然)SDL_Renderer*
andname.ptr
是char*
指向要加载的图像的名称。但是当使用 gdc 编译时,IMG_Load
两者IMG_LoadTexture
都返回null
,而使用 dmd 他们返回一个指向新创建的纹理的指针......
我是否忘记了其他事情(毕竟,即使没有 dmd 它也可以工作IMG_Init
)?Derelict 是否仅适用于 dmd(即使它仅与 C 函数接口)?
dmd:2.065
全球数据中心:4.9.1
编辑 :
原来问题完全不同。IMG_LoadTexture
为其第二个参数获取指向数据的指针,但name.ptr
似乎仅适用于 dmd。但是,如果我尝试使用这样的硬编码参数:
IMG_LoadTexture(renderer, "../test/res/image.jpg")
它适用于 dmd 和 gdc。
objective-c - Objective C - 调节 GDC 线程以限制 cpu 使用
我有一个使用 xmppframework (聊天系统)的应用程序,以减轻主线程我将所有数据处理移动到低优先级队列上,但它提出了一个问题,当我同时收到大量聊天消息时启动 n 个线程(基于on resource ) 导致 cpu 使用率达到 100-140% 导致 UI 阻塞。如何调整此队列的可用资源以防止 CPU 达到这些限制?
d - 使用 GDC 链接到 DerelictGL3
TL;博士:
我如何从拥有 DerelictGL3 等的源代码到使用 GDC 链接到它?
详细投诉:
我有一个用 D 编写的小程序。(http://dlang.org)
我正在尝试使用以下命令构建该程序。(我在Linux上。)
我收到以下错误消息。
我相当确定我传递给 GDC 的所有参数都不是正确的,超出了我的源文件的名称。如果我注释掉所有 -L 行,行为是相同的。如果我注释掉 -I 行,我会得到以下信息。
但是,我希望可以通过一个放置良好的库来解决这个问题。
我如何从拥有 DerelictGL3 等的源代码到使用 GDC 链接到它?
编辑: 我确信我已经在 /usr/bin/ 中安装了 libDerelictGL3.a、libDerelictGLFW3.a 和 libDerelictUtil.a。
更多想法: 我真的很困惑为什么我需要针对源代码进行编译。这不是 C++,也没有头文件。当我放弃 -I 行时,编译器不知道如何打开 gl3 模块。它不应该只是推断我使用的函数存在,然后如果/当它找不到它们时会出现链接器错误?鉴于我已经编译了库并在搜索路径中,为什么 GDC 不能弄清楚其余部分?
更多想法: 我最近发现Can't link GLFW3: undefined references 在这种情况下,OP 发现他们需要 .so 形式的库,而不是 .a 形式,因为他们正在尝试动态链接。我目前正在对此进行调查。
另一个难题: 我已将 gdc 调用的相关部分更改为
现在,我似乎在链接到 _d_runtime 本身时遇到了问题,而不是在链接到 Derelict 时遇到了麻烦。
输出是类似于这些的数百行:
因此,我认为我的问题是 _d_runtime(如果名称错误,请原谅我)在 /usr/bin 以外的某个地方,并且当我将 -L 路径覆盖到 /usr/bin 时(因为那是我放置库的地方)我很难找到它。要么是这样,要么我只是首先安装了 D 错误。但无论哪种情况,它实际上都是在上述示例中找到 libDerelictGL3.a !=)
d - GDC 相当于 dmd 的 -main 选项
GNU D 编译器是否提供类似于-main
dmd 的标志?我已经检查了 GCC 本身和gdmd
(旨在为 dmd 采用类似参数,但使用 gdc 代替)的选项列表,但找不到类似的东西。
如果存在这样的标志,我该怎么做才能获得类似的行为?
templates - 有没有我可以让 GDC 给我所有扩展模板的源代码,但没有完成其他工作?
假设我有一个foo.d
实例化一堆模板的文件。有什么方法可以要求 GDC(特别是)给我foo.d
所有实例化的模板,但没有做其他事情?GCC-E
选项显然不起作用,因为 D 模板没有被 C 预处理器扩展,但我不确定我应该尝试哪个选项(或者是否存在)。