Скомпилируйте проект D с DMD - PullRequest
1 голос
/ 22 апреля 2019

Это может быть глупейший вопрос новичка, но как мне на самом деле скомпилировать проект D с DMD в Windows?

Я попробовал эти команды:

  • dmd *
  • dmd *.d
  • cd .. && dmd {DirectoryName}
  • dmd file1.d file2.d

Но ни один из них не компилирует проект в исполняемый файл.

Iхочу создать файл .exe из этого проекта, но, похоже, не могу.Я могу скомпилировать только один файл в проекте или скомпилировать несколько, но только файл .obj, а не .exe ...

1 Ответ

2 голосов
/ 22 апреля 2019

DUB самый простой для начинающих:

C:\Users\217216x715132\Desktop\tmp1>dub init
Package recipe format (sdl/json) [json]:
Name [tmp1]:
Description [A minimal D application.]:
Author name [217216X715132]:
License [proprietary]:
Copyright string [Copyright © 2019, 217216X715132]:
Add dependency (leave empty to skip) []:
Successfully created an empty project in 'C:\Users\217216x715132\Desktop\tmp1'.
Package successfully created in .

C:\Users\217216x715132\Desktop\tmp1>dub run
Performing "debug" build using dmd for x86.
tmp1 ~master: building configuration "application"...
Linking...
Running .\tmp1.exe
Edit source/app.d to start your project.

C:\Users\217216x715132\Desktop\tmp1>

Вы можете скопировать все свои d-файлы в директорию your-project \ source \ и позволить dub выполнить всю тяжелую работу.

dub init по какой-то причине не работает из git bash, так как ожидает ввода в CLI. Так что вам нужно dub init из cmd.exe. dub run должно нормально работать с git bash.

Если вы запустите его из git bash, нажмите клавишу ввода 7 раз, все значения по умолчанию будут приняты и проект будет создан.

arun MINGW64 ~/Desktop/tmp1$ dub init







Package recipe format (sdl/json) [json]: Name [tmp1]: Description [A minimal D application.]: Author name [217216X715132]: License [proprietary]: Copyright string [Copyright © 2019, 217216X715132]: Add dependency (leave empty to skip) []: Successfully created an empty project in 'C:\Users\217216x715132\Desktop\tmp1'.
Package successfully created in .

arun MINGW64 ~/Desktop/tmp1$

Похожие проблемы в DUB

...