Настройка работающего D2.x Toolchain (с GTKD) на Ubuntu 10.04

StackOverflow https://stackoverflow.com/questions/3897671

  •  29-09-2019
  •  | 
  •  

Вопрос

Я играю с D в течение нескольких дней, и стал довольно взволнованным, пока, то есть я пытался получить GTKD. Теперь я потратил лучшую часть 3 дня, пытаясь получить рабочую установку, и начинаю получать (читать; давно получил) немного деморализован. Мне было интересно, может ли кто-нибудь помочь, прежде чем сдаться. Многие из информации, которую я могу найти в Интернете, устарела, поэтому я не уверен, если я даже правильно, думая, что это даже возможно.

Остальное это просто о том, что я пробовал до сих пор, и вам, возможно, не нужно читать его, если у вас есть быстрое решение, поэтому не стесняйтесь прыгать ... [Прыгайте сюда

Итак, во-первых, мне нужно знать, танго фактически доступно для использования с D2.0, я считаю, что это не было изначально, но теперь D2.x такова, что вы можете использовать танго и фобос рядом друг с другом. Если это неправда, то я думаю, я упал на первое препятствие, и это не стартер.

Шаги, которые я взял до сих пор.

  1. Я установил GDC из репозитории Ubuntu
  2. Я установил заголовки либтанго из репо (примечание, только заголовки, отсутствие либеров, так что это не очень помогает)
  3. Я вручную установил DSSS

Эта настройка будет компилировать D, но когда я пришел к установке GTKD (с DSSS), он скомпилирован, но я получил всевозможные ошибки (относящиеся к танго) при попытке скомпилировать что-либо, используя его. Ну, как я упомянул, у меня не было ливок, поэтому это не должно было быть неожиданным. Я пытался установить Tango Libs вручную, но все еще получил нагрузки на ошибки, а в конце прибегают к dsss net install tango Что предупреждали меня, что я не смогу вернуться к Фобосу (что-то, что смущает меня, как я уже упоминал, я думал, что два могут быть использованы рядом друг с другом) в любом случае, я продолжал, и он полностью прикрутил мою настройку. Я не мог скомпилировать ни одного D теперь.

Извините, я не мог быть более явным в отношении того, какие ошибки я получил в этом последнем разделе, я, честно говоря, не помню.

В любом случае, я удалил все, что установил. И начал заново.

  1. Я установил GDC из репозиторов
  2. Я установил DSSS вручную

Теперь я прочитал, что последний танго не работает с GDC (не уверен, правда ли это), так что я

  1. Получил деб для DMD и установил это.
  2. Установил заверяющуюся танго (либели и заголовки) вручную.
  3. Установлен GTKD с DSSS

Теперь я не могу получить DSS, чтобы узнать DMD, поэтому можно использовать только GDC с ним. Что, однако, не находит танго. Если я использую DMD напрямую, он находит танго и GTKD, но я получаю ошибки о volatile заявления устарели. Что-то, что, по-видимому, верно в D2.x, который возвращает меня к «танго даже поддерживается».

Черт возьми, я в замешательстве!

Прыгай сюда

Если кто -то может дать мне пошаговые инструкции о том, как настроить рабочую настройку, я был бы всегда благодарен!

Спасибо, Т.

Обновлять: "Были там!"

Итак, я скачал dmd.2.049.zip от http://www.digitalmars.com/d/download.html. и извлечен в мой домашний каталог и сделал export PATH = $PATH:~/dmd2/linux/bin (Благодаря Днимча).

Забыли о dsss. Анкет Получил версию GTKD SVN в соответствии с инструкциями в http://www.dsource.org/projects/gtkd/wiki/usingsubversion.. Анкет Отредактировано GNUmakefile Чтобы изменить префикс на /home/me/dmd2/linux и сделал make install.

Отредактирован ~/dmd2/linux/bin/dmd.conf Итак, включают пути ../include (GTKD Libs введены в ../lib Так что мне не нужно было отредактировать пути библиотеки).

Теперь, наконец, чтобы собрать с GTKD, мне нужно было связаться с Libgtkd и Libdl, это было сделано, dmd mydprog.d -L-lgtkd -L-ldl(Спасибо JPF).

Это было полезно?

Решение

  1. Танго не работает с D2. Давным -давно были некоторые усилия, но этот вид ударил по стене, и неясно, будет ли это когда -либо закончено. OTOH Phobos для D2 много Лучше, чем фобос для D1, поэтому отсутствие танго не так плохо, как кажется.

  2. GDC поддерживает древнюю версию D2. Нет абсолютно нет шансов на GTKD компилировать с ним. Вы должны использовать ссылочный компилятор DMD.

  3. Как правило, правильный способ настройки DMD на Linux - это просто расстегнуть DMD.2.0xx.zip в свой домашний каталог и сделать export PATH = $PATH:~/dmd2/linux/bin Чтобы убедиться, что исполняемый файл DMD находится на вашем пути. Тогда все должно работать (с DMD2 и фобосом).

Другие советы

Если вы хотите, чтобы DMD пропустите аргументы для линкера, вы должны префикс их с -l. Я думаю, что для GTKD вам нужно связать с библиотекой GTKD и libdl.

-L-lgtkd -L-ldl
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top