DUB and static libs
Mike Parker via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Wed Apr 20 06:12:54 PDT 2016
On Wednesday, 20 April 2016 at 10:19:10 UTC, abad wrote:
> I have a project which is a mixture of D, C++ and C. I have
> used Make for build automation so far but would like to migrate
> to DUB.
>
> I have hard time figuring out what to do with C / C++ sections
> of the program. DUB seems to ignore (probably sensibly)
> everything but D source files. I compiled a static library of
> the non-D sections of my program, and now I'd need to tell DUB
> to include the library in the linking stage.
>
> I tried to use "linkerFiles" argument in dub.json but that
> doesn't seem to do anything.
>
> Here's the full dub.json:
>
>
>
> {
> "name": "audio_test",
> "description": "audio test.",
> "copyright": "",
> "authors": [""],
> "dependencies": {
> "derelict-imgui": {"version":"~master", "path":
> "./DerelictImgui/"},
> "derelict-glfw3": "~>1.1.0",
> "derelict-gl3": "~>1.0.12",
> "derelict-sdl2": "~>1.9.7",
> },
>
> "libs": [ "stdc++" ],
>
> "stringImportPaths": [
> "res"
> ],
>
> "linkerFiles": [
> "sid.a"
> ]
>
> }
>
> sid.a is the library in question.
>
> Any ideas?
"libs": [ "stdc++", "sid.a" ],
You'll also need to pass the appropriate linker-specific flag to
set the library path in lflags if sid.a isn't already on the
path. (dub already supports an importPaths field, but needs a
libraryFlags field too given there are at least three different
linkers to content with).
More information about the Digitalmars-d-learn
mailing list