Я несколько дней играл с D и очень волновался, пока не попытался заставить работать gtkd. Сейчас я потратил большую часть трех дней, пытаясь получить рабочую настройку, и начинаю немного (читать; давно получил) немного деморализоваться. Мне было интересно, если кто-нибудь может помочь, прежде чем я сдаюсь. Большая часть информации, которую я могу найти в Интернете, устарела, поэтому я не уверен, правильно ли я считаю, что это вообще возможно.
В остальном это примерно то, что я пробовал до сих пор, и вам может не понадобиться читать его, если у вас есть быстрое решение, поэтому не стесняйтесь переходить к ... [Перейти к здесь]
Итак, во-первых, мне нужно знать, действительно ли танго доступно для использования с D2.0, я считаю, что оно изначально не было, но теперь D2.x таков, что вы можете использовать танго и фобо рядом друг с другом. Если это не так, то я думаю, что я упал на первое препятствие, и это не стартер.
Шаги, которые я предпринял до сих пор.
- Я установил GDC из репозиториев Ubuntu
- Я установил libtango-заголовки из репозиториев (заметьте, только заголовки, нет доступных библиотек, так что это не сильно поможет)
- Я вручную установил dsss
Эта установка скомпилирует D, но когда я пришел к установке gtkd (с dsss), он скомпилировался, но я получил всевозможные ошибки (связанные с танго), когда пытался скомпилировать что-либо, используя его. Ну, как я уже говорил, у меня не было libs, так что это не должно было быть неожиданным. Я попытался установить библиотеки танго вручную, но все равно получил массу ошибок и в конце концов прибегнул к dsss net install tango
, который предупредил меня, что я не смогу вернуться к Фобосу (что меня смутило, как я уже говорил, думал, что эти два могут быть использованы вместе друг с другом) в любом случае, я продолжил, и это полностью испортило мои настройки. Я не мог собрать D сейчас.
Извините, я не могу более подробно рассказать о том, какие ошибки я получил в последнем разделе, честно говоря, не помню.
Во всяком случае, я удалил все, что я установил. И началось заново.
- я установил gdc из репозитория
- Я установил dsss вручную
Я сейчас прочитал, что последнее танго не работает с GDC (не уверен, что это правда), поэтому я
- Получил deb для dmd и установил его.
- Устанавливал последнее танго (libs и headers) вручную.
- Установлен gtkd с dsss
Теперь я не могу заставить dsss распознавать dmd, поэтому могу использовать только gdc с ним. Это, однако, не находит танго. Если я использую dmd напрямую, он находит tango и gtkd, но я получаю ошибки об устаревших операторах volatile
. Что-то, что, очевидно, верно в D2.x, что возвращает меня к «танго даже поддерживается».
Черт возьми, я запутался!
[Перейти здесь]
Если кто-нибудь может дать мне пошаговые инструкции о том, как настроить рабочую настройку, я буду вечно благодарен!
Спасибо, Т.
Обновление: "Мы здесь!"
Итак, я скачал dmd.2.049.zip из http://www.digitalmars.com/d/download.html, распаковал его в свой домашний каталог и сделал export PATH = $PATH:~/dmd2/linux/bin
(спасибо dsimcha).
Забыл про dsss
. Получил svn-версию gtkd в соответствии с инструкциями на http://www.dsource.org/projects/gtkd/wiki/UsingSubversion. Отредактировал GNUmakefile
, чтобы изменить префикс на /home/me/dmd2/linux
и сделал make install
.
Отредактировано ~/dmd2/linux/bin/dmd.conf
, поэтому включаемые пути включены ../include
(библиотеки gtkD помещены в ../lib
, поэтому мне не нужно редактировать пути к библиотекам).
Теперь, наконец, для компиляции с gtkD мне нужно было связать с libgtkd и libdl, это было сделано, dmd mydprog.d -L-lgtkd -L-ldl
(спасибо jpf).