Tango, usergdi32 problem, link prob i think..

Chris Warwick sp at m.me.not
Tue Mar 13 07:14:09 PDT 2007


"Sean Kelly" <sean at f4.ca> wrote in message 
news:et551e$8n7$1 at digitalmars.com...
> Chris Warwick wrote:
>> Hi. i've installed tango but i'd been strugling to get the sys.win32 
>> stuff happening. I keep getting this error when i build...
>>
>> C:\Documents and Settings\chris\Desktop\dproj>bud Project1.d -full
>> OPTLINK (R) for Win32  Release 7.50B1
>> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>>
>> cjl\graphic.obj(graphic)
>>  Error 42: Symbol Undefined _SetDIBitsToDevice at 48
>>
>> The source line is this..
>>
>>         int err = SetDIBitsToDevice(
>>             dc, x, y, fwidth, fheight,0, 0, 0,
>>             fheight, fpixels.ptr, &fheader, DIB_RGB_COLORS
>>             );
>>
>> And it seems to do the same with all the gdi functions. Anyway I tried 
>> this..
>>
>> version(build) { pragma(link, usergdi32); };
>>
>> to get bud to link in usergdi32, but CreateWindowEx, and other non gdi 
>> functions are working ok so i dont think thats the problem.
>
> usergdi32.lib is linked by default for Tango/Win32, so something else is 
> going on.  I'd guess that perhaps the windows library that contains the 
> implementation for this function is snot being linked.  The function lives 
> in gdi32.lib, so try putting that in the pragma instead.  Tango's 
> usergdi32.lib only contains constants and such.  The actual windows code 
> lives elsewhere.

Yeah that has done the trick.. thanks.





More information about the Digitalmars-d-learn mailing list