我使用 Fedora20 并通过以下方式安装 gtkd
须藤 yum 安装 gtkd

如何编译gtk这段代码?

import gtk.MainWindow;
import gtk.Label;
import gtk.Main;

void main(string[] args)
{
    Main.init(args);
    MainWindow win = new MainWindow("Hello World");
    win.setDefaultSize(200, 100);
    win.add(new Label("Hello World"));
    win.showAll();
    Main.run();
}

但我收到这个错误

➜/tmp dmd -L-lgtkd -L-ldl main.d
main.d(1): 错误:模块 MainWindow 位于无法读取的文件“gtk/MainWindow.d”中
导入路径[0] =/usr/include/dmd/phobos
导入路径[1] =/usr/include/dmd/druntime/import

请帮我。

最佳答案

如果你使用 Fedora 提供的 gtkd-devel 包,你应该知道它链接到 libphobos-ldc 库,一旦你安装了 ldc2 包( yum install ldc2 就行),你就会得到这个库。

这还没有解决您的问题... gtkd-devel 包将 gtkd D 接口(interface)模块安装到 /usr/include/d/gtkd-2 文件夹中。因此,为了编译您的 GtkD 应用程序,您需要执行类似的操作(假设您的 D 文件名为“firstwin.d”):ldc2 -I/usr/include/d/gtkd-2 -L-lgtkd-2 firstwin.d

关于在 Fedora 上使用 D lang 的 GtkD,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23542478/

10-08 23:09