The order of libraries makes error in dub
Mike Parker via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Dec 5 06:59:26 PST 2016
On Monday, 5 December 2016 at 14:29:42 UTC, unDEFER wrote:
> On Monday, 5 December 2016 at 11:51:52 UTC, unDEFER wrote:
>
>> "libs-posix": ["db"],
>> "sourceFiles-windows-dmd": ["libdb53d.lib", "WS_32.LIB"],
>> "dflags-windows": ["-m32mscoff"],
>>
>> "subPackages": [
> ....
>
> I understand that I don't must add "sourceFiles-windows-dmd" to
> lib project, I must add it to subPackages, but dub places the
> names of lib BEFORE -m32mscoff. So it doesn't work.
> Say me: dub for windows not ready??
DUB works on Windows just fine. My question is, why are you
passing libraries in the sourceFiles field? Why not:
"libs-windows-dmd":["libdb53d.lib","ws2_32.lib"]
Does that make a difference?
Also, let's be clear here, the errors you saw above are linker
errors, not DUB errors. This one in particular is very common on
Windows when using the MS linker:
warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other
libs; use /NODEFAULTLIB:library
It's normally because you're linking in libs compiled against
different versions of the C standard library. Google should help
you out there.
More information about the Digitalmars-d-learn
mailing list