D Newbie Trying to Use D with Major C Libraries
Craig Dillabaugh via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu May 15 18:24:41 PDT 2014
On Friday, 16 May 2014 at 01:16:46 UTC, Craig Dillabaugh wrote:
> On Thursday, 15 May 2014 at 22:25:47 UTC, Tom Browder via
> Digitalmars-d-learn wrote:
>> I am a volunteer developer with the well-known 3D CAD FOSS
>> project BRL-CAD:
>>
>> http://brlcad.org
>>
>> I have wanted to use D for a long time but I hadn't taken the
>> plunge.
>> Yesterday I advertised to the BRL-CAD community my new project
>> to
>> attempt to create D bindings for BRL-CAD's C libraries, and I
>> created
>> a branch for the project.
>>
>> I have been looking for specific information on creating D
>> bindings
>> from C headers for which there seems to be sufficient
>> information
>> available, but I would appreciate recommendations as to the
>> best
>> method. I have successfully built my first pure D program but
>> now
>> need to test the feasibility of my project.
>>
>> What I have not seen yet is the exact way to build a D program
>> which
>> uses D bindings and its matching C library. I have just
>> created a
>> Cookbook page on the D Wiki where I show my first attempt for
>> a real
>> GNU Makefile as an example for the project. The page link is
>> here:
>>
>> http://wiki.dlang.org/Using_C_libraries_for_a_D_program
>>
>> I would appreciate it if an experienced D user would correct
>> that
>> recipe so it should compile the desired binary source correctly
>> (assuming no errors in the input files).
>>
>> Thanks for any help.
>>
>> Best regards,
>>
>> -Tom
>
>
> Hi Tom,
> Sadly, I lack the expertise to give you much advice. I did
> read through your Wiki posting though. One thing that came to
> mind was you used GMake. Perhaps you should consider using
> DUB. For example here is the DUB config file for one of my
> library bindings (in my case I used a static library though):
>
> {
> "name": "shplib",
> "description": "D bindings for Shapelib. Shapefile
> reader.",
> "homepage":
> "https://github.com/craig-dillabaugh/shplib.d",
> "homepage": "http://shapelib.maptools.org/",
> "importPaths":["."],
> "targetType": "sourceLibrary",
> "authors": [
> "Craig Dillabaugh"
> ],
> "sourcePaths": ["./source"],
> "libs-posix" : ["libshp"]
> }
>
> A little nicer that GMake, more the "D way", and cross platform
> ... I think.
>
> Not sure exactly how you change that for linking to a .so lib.
>
> Cheers,
>
> Craig
Some info on DUB can be found at:
http://code.dlang.org/
More information about the Digitalmars-d-learn
mailing list