Incomprehensible compiler errors

Dmitry Olshansky dmitry.olsh at gmail.com
Mon Jul 30 13:04:22 PDT 2012


On 30-Jul-12 23:45, Stuart wrote:
> On Monday, 30 July 2012 at 19:03:13 UTC, Dmitry Olshansky wrote:
>> Why would you use internal module of library is beyond me
>
> Perhaps because nobody saw fit to define IsWindow() in module
> "core.sys.windows.windows"?

Yeah, it's woefully lacking. There is Win32 bindings project that covers 
all of WinAPI/DirectX/etc. (not sure about modern extensions as in 
Win7/8 but far better then built-in).

>> dmd your_module.d dfl.lib
>
> No, that doesn't help. Because I'm getting this same shit when I import
> my OWN .d files:

It doesn't matter whose these file are. You need all of them passed to 
compiler (then it will link them together) or split them in packs and 
compile to libraries and then pass to linker.

D compiler doesn't link in dependencies automatically the reason for 
this was "too much magic" and "hard to override" (e.g. what if it picks 
  up wrong libraries and/or files?).


So for humans the way to go is to use rdmd tool that deduces all 
dependencies if you pass it one main file.

This will compile all files and execute you app (it also rebuilds only 
if files change):
rdmd mymain.d

or to only build app (not execute):
rdmd --build-only mymain.d


-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list