如何在linux上使用gtkd

时间:2015-03-18 11:21:04

标签: linux d gtkd

我正在尝试使用gtkd库编译一个hello world程序 我正在使用dmd编译器(安装到我的〜/目录中),我已经检查过编译器完美运行。
以防万一,这是我的源代码:

//pragma(lib, "gtkd");
//pragma(lib, "dl");

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();
}

pragma被注释掉了,因为(如果我理解这一点)他们只做-L-l标志,他们也没有让我更接近解决方案。 无论如何,在我保存文件后,我运行:

dmd hello.d -L-lgtkd -L-ldl

并收到以下错误:

/usr/bin/ld: cannot find -lgtkd
collect2: error: ld returned 1 exit status
--- errorlevel 1

我已经将libgtkd-3.a,libgtkdgl-3.a和libgtkdsv-3.a复制到/ usr / lib中,但终端的输出保持不变。 我知道链接器无法找到我的文件,但我不知道如何帮助他这样做。

有关我的安装的更多信息,我已完全按照this post设置了所有内容。 不确定是否重要,但我的电脑正在运行crunchbang,一个基于debian wheezy的发行版。 提前致谢, [R

1 个答案:

答案 0 :(得分:3)

dmd hello.d -L-lgtkd -L-ldl

尝试查找libgtkd.a,但您没有libgtkd.a,您有libgtkd-3.a所以必须使用:

dmd hello.d -L-lgtkd-3 -L-ldl