[archived content]
Dfl /

New: Tutorial


  1. Follow the DMD installation instructions at http://www.digitalmars.com/d/dcompiler.html
  2. Download DFL from http://www.dprogramming.com/dfl.php or Snapshots
  3. If using the exe installer, it is recommended that you install into your DMD directory. If using the zip archive, it is recommended that you extract into your DMD directory.

If you want to use Tango, see the DFL Tango page. If using the DFL installer with Tango, be sure to uncheck "Build DFL lib files".


To use DFL you can simply use the dfl.exe that should be in your \dmd\bin or \dmd\windows\bin directory which should already be in your PATH variable from when you setup DMD.
* Example: dfl -gui helloworld.d


Otherwise, you can use DMD directly, but you will need to use certain switches. For a normal Windows application, use:


To include the console window in your application, use this instead:


You will also need to use -debug with dfl_debug.lib, and -release with dfl.lib, depending on which you wish to use.
Failure to use these switches as appropriate can cause undesired affects.
* Example: dmd helloworld.d dfl_debug.lib -Ic:\dmd\import -debug -L/exet:nt/su:windows:4.0

If you did not already build the lib files or need to rebuild them, you can either use dfl -dfl-build or use the go.bat file in the source directory (typically C:\dmd\import\dfl).


You can also try ReBuild.
* Example: rebuild helloworld.d -Ic:\dmd\import -L/exet:nt/su:windows:4.0


You can also try Build/Bud, but be aware of the above.
See here if you are having problems with build/bud.
* Example: bud helloworld.d -Ic:\dmd\import -version=gui

You do not need to worry about switches and lib files when using dfl.exe. All you should need is -debug or -release, and -gui or -console.

* Example commands:

dfl -gui helloworld.d
dmd helloworld.d dfl_debug.lib -Ic:\dmd\import -debug -L/exet:nt/su:windows:4.0

For DFL code examples, look in \dmd\packages\dfl\examples and ExampleCode. Also check out CodeTips and DflDoc.

Page last modified on June 01, 2010, at 02:30 PM