On Tuesday, 24 June 2014 at 04:37:56 UTC, Rikki Cattermole wrote:
On 24/06/2014 1:13 p.m., Jason King wrote:
This is me trying to link with Juno and getting tantalizingly close to
success.

DMD home is d:\d so binaries are d:\d\dmd2\windows\bin (on path)
Juno is in
D:\dlang\Juno-Windows-Class-Library
D:\dlang\Juno-Windows-Class-Library\juno.lib exists
sc.ini is untouched

D:\dlang\Juno-Windows-Class-Library\examples\com>dmd
-L+d:\dlang\Juno-Windows-Cl
ass-Library\juno.lib -Id:\dlang\Juno-Windows-Class-Library events.d
OPTLINK (R) for Win32  Release 8.00.15
Copyright (C) Digital Mars 1989-2013  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
d:\dlang\Juno-Windows-Class-Library\juno.lib(core)
 Error 42: Symbol Undefined _VarCmp@16
--- errorlevel 1


Looks like that's a Windows API function [0].
Get it to link with OleAut32 and it should work, if I'm correct.


Thanks, Rikki
There was a pragma(lib,"oleaut32.lib") in one of the source files, so it should have been linking. The problem now is that the DM oleaut32.lib doesn't include a _VarCmp@16. I ran lib -l oleaut32.lib to get a list file. No exported _VarCmp@16. There were 400-odd lines of exports so I believe lib -l worked. If I run implib /s oleaut32.lib oleaut32.dll vs. a windows XP oleaut32.dll I get an oleaut32.lib that includes a _VarCmp (not _VarCmp@16). What's the secret sauce to creating an oleaut32.lib that's fully decorated? Is there a way to get a newer oleaut32.lib into the d distributions. The full dmc oleaut32.lib is also missing _VarCmp@16 so no joy there either.

Reply via email to