Как использовать gtkd на Linux

Я пытаюсь скомпилировать программу hello world с использованием библиотеки gtkd.
Я использую компилятор 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();
}

Прагмы закомментированы, потому что (если я правильно понимаю) они не делают ничего, кроме флагов -Ll, и не приблизили меня к решению. В любом случае, после сохранения файла я запускаю:

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, но вывод терминала остался прежним. Я понимаю, что компоновщик не может найти мои файлы, но я не знаю, как еще я могу помочь ему сделать это.

Для получения дополнительной информации о моей установке, я настроил все точно так же, как в этом посте. Не уверен, что это имеет значение, но мой компьютер работает под управлением crunchbang, дистрибутива на основе Debian Wheezy. Заранее спасибо, R

1 ответ

Решение
dmd hello.d -L-lgtkd -L-ldl

это попытка найти libgtkd.a но у тебя нет libgtkd.a, у тебя есть libgtkd-3.a поэтому вы должны использовать:

dmd hello.d -L-lgtkd-3 -L-ldl
Другие вопросы по тегам