2016-02-19 6 views
4

Я недавно установил ldc через hombrew на своем Mac и тестировал код под сценарий from the D wiki, когда заметил, что использование ldmd2 для компиляции моей программы также не запускает мою программу после. Какая разница, так как это то же поведение, что и ldc2.ldc2 vs ldmd2 В чем разница?

Heres моей программа

import std.stdio; 
void main() 
{ 
    writeln("Hello, world without explicit compilations!"); 
} 

EDIT:. Состояние сайта «Для небольших проектов, это удобно для компиляции и запуска в одном шаге Большинство (если не все) пакеты компилятора, содержит инструмент под названием rdmd/gdmd/ldmd или аналогичный. Для учебных целей мы будем называть его rdmd. " То, что я принимаю от этого, зависит от того, какой компилятор вы используете, но в случае с ldc я должен использовать ldmd.

+0

Это была ошибка в wiki, которая с тех пор исправлена. –

ответ

3

ldmd2 - это всего лишь сценарий оболочки для ldc2, который преобразует форматы аргументов из стиля dmd в стиль ldc.

Таким образом, он делает то же самое, только некоторые параметры и флаги в командной строке компиляции имеют разные имена и тому подобное.

Ссылка ссылается на r dmd, которая представляет собой отдельную программу, которая рекурсивно захватывает зависимости, компилирует и автоматически запускает. rdmd работает поверх компилятора и может быть упакован с ним или, возможно, потребуется загрузить отдельно.

Его источник живет здесь: https://github.com/D-Programming-Language/tools/blob/master/rdmd.d

и совместим с форматами ldmd2 «s опционам.

+0

На веб-сайте говорится: «Для небольших проектов это удобно для компиляции и запуска за один шаг. Большинство (если не все) пакетов компилятора содержат инструмент с именем rdmd/gdmd/ldmd или аналогичный. Для учебных целей мы будем называть его rdmd. " Что я беру из этого, это зависит от того, какой компилятор использует, но в случае с ldc я должен использовать ldmd для не rdmd. – Jem4687

+0

Тот, кто написал это в вики, ошибся. –

 Смежные вопросы

  • Нет связанных вопросов^_^