linking C library with D, creating a OpenVG D port
ddos via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri Apr 3 03:29:48 PDT 2015
hi!
i'm trying to run OpenVG examples in D. So far i have compiled
ShivaVG (an implementation of OpenVG standard) in C++ and created
a shared library. Now i'd like to link my OpenVG.lib with a D
program.
(the library was compiled with msvc2013x86, i'd like to avoid
switching compiler)
to link the library i added my C++ lib to my dub file,
"libs": ["OpenVG"],
dmd complains: Error 43: Not a Valid Library File
after some googling i found out i have to convert/create my lib
file in the appropriate format to be used with dmd, so i used
implib to create a new lib from my dll. viewing this lib no
exports are visible with dumpbin, dumpbin /EXPORTS OpenVG_D.lib
also reports a warning: OpenVG_D.lib : warning LNK4048: Invalid
format file; ignored
maybe i have to use another tool here to view the exports? but
dumpbin can view pe and coff, dmd uses coff i think so this
should work i guess
if i try to compile my application it now tells me about the
obviously missing export, Error 42: Symbol Undefined
_vgCreateContextS
More information about the Digitalmars-d-learn
mailing list