GtkD с D lang на Fedora

Я использую Fedora20 и устанавливаю gtkd через sudo yum install 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

Пожалуйста, помогите мне.

1 ответ

Решение

Если вы используете gtkd-devel пакет, предоставленный Fedora, вы должны знать, что он связан с libphobos-ldc библиотека, которую вы получите после установки ldc2 пакет (yum install ldc2 Сделаю).

Это еще не решает вашу проблему, хотя... пакет gtkd-devel устанавливает интерфейсные модули gtkd D в /usr/include/d/gtkd-2 папка. Итак, чтобы скомпилировать ваше приложение GtkD, вам нужно выполнить что-то вроде (при условии, что ваш D-файл имеет имя "firstwin.d"): ldc2 -I/usr/include/d/gtkd-2 -L-lgtkd-2 firstwin.d

Другие вопросы по тегам