Can't compile DFL Program

Walter Bright newshound2 at digitalmars.com
Fri Jul 22 19:18:48 PDT 2011


On 7/21/2011 3:21 PM, ray96_28139 at yahoo.com wrote:
> DFL and D are both installed properly. How do I fix this?

I'd first test that you can compile, link, and run a simple "hello world" program:

import std.stdio;
void main() { writeln("hello world"); }

This means at least the compiler is installed correctly.

Next, the problem you're having is undefined symbols from the linker. I don't 
know dfl, but this is most likely because the dfl library is not listed on the 
command line to dmd.

For example, one of the undefined symbols is:
  Error 42: Symbol Undefined _D3dfl9statusbar12__ModuleInfoZ
                                ^^^ ^^^^^^^^^

means that the .obj file resulting from compiling dfl\statusbar.d is not 
specified to the linker. Such a .obj file is probably part of a dfl library, 
probably named dfl.lib.

To specify linking with a library file such as dfl.lib:

    dmd foo.d dfl.lib

where foo.d is your source file, and dfl.lib is the library needed to link against.


More information about the Digitalmars-d mailing list