2014-12-29 2 views
3

Я знаю, что в МДДЕ это можно сделать так:Как установить выходной каталог для rdmd (Windows)?

> cd ..\bin 
> dmd ..\src\example.d 

или как это:

> dmd example.d -offilename ..\bin\example.exe 

Но в rdmd этих методов не работает. Файл «example.exe» всегда появляется в той же папке с «example.d».

Я пытался сделать это

> rdmd --build-only example.d ..\bin\example.exe 

, этот

> rdmd --build-only example.d -offilename ..\bin\example.exe 

и этот

> cd ..\bin && rdmd --build-only ..\src\example.d 

с тем же отрицательным результатом.

ответ

5

У вас есть синтаксис -offilename. filename - это примерное значение. Его необходимо заменить: -of..\bin\example.exe. Многие другие параметры dmd работают одинаково.

Кроме того, rdmd не передает аргументы, которые поступают после исходного файла в dmd. Они интерпретируются как аргументы для программы, которая построена и запущена (независимо от --build-only). Это означает, что вам нужно поставить перед -of..\bin\example.exeexample.d:

rdmd --build-only -of..\bin\example.exe example.d

+0

Да, это было из-за неправильного порядка аргументов –

3

С «из» вариант, это означает, что вы замените «имя файла» с именем выходного файла, например:

rdmd --build-only -of../bin/example.exe example.d 

Это работает для меня в моих проектах makefile. EDIT: Я забыл, что порядок аргументов также имеет значение с DMD.

+0

Примечание: Только rdmd заботится о порядке аргументов, DMD принимает их в любом порядке. – Manuzor

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