.lib and .h files conversion to d

jicman cabrera_ at _wrc.xerox.com
Sat Sep 15 22:20:09 PDT 2007


Bill Baxter Wrote:

> jicman wrote:
> > Robert Fraser Wrote:
> > 
> >> jicman Wrote:
> >>
> >>> Greetings.
> >>>
> >>> I am trying to use an application that has an SDK package.  I have a bunch of c programs and .h headers and .lib files.  This SDK does not have a COM interface, otherwise I would use Juno, but I would like to use D to create a few programs for a few repetitive tasks.
> >>>
> >>> What is the best way to go about this?
> >>>
> >>> I know this has been asked probably thousand of times, so if anyone could guide me as to where I can find more info, or give me some steps with this, I would greatly appreciate it.  I tried searching on this, but there was no clear answer.  I did see the, " Converting C .h Files to D Modules" found here,
> >>>
> >>> http://www.digitalmars.com/d/htomodule.html
> >>>
> >>> which is a pretty intense job and so I am hoping that there is another way. :-)
> >>>
> >>> thanks,
> >>>
> >>> jose
> >> There are programs that do *some* of the work automatically:
> >>
> >> http://www.digitalmars.com/d/htod.html
> >> http://www.dsource.org/projects/bcd
> >>
> >> You'll still need to verify the output but it's a start.
> > 
> > Thanks.  This is perfect.
> > 
> > jose
> 
> I haven't had much luck with either of these.
> htod is just too simplistic.
> For instance it seems to get hung up on pretty common C idioms like:
>    typedef struct {...} MyStruct;
> 
> bcd (the Windows binary) just hangs and produces no output for me.
> 
> So I've been translating things by hand.
> It's not too bad and if you're good with emacs keyboard macros, you can 
> semi-automate a lot of it.
> 
> --bb

Thanks.  It will, at least, get me going.  I used to be an emacs expert and then I found myself having to learn vi, since most of our unix servers didn't come with emacs, so I fallen in love with vim and so that is what I use.  Whatever I used to do with emacs, I can do with vim. :-)

Thanks,

josé


More information about the Digitalmars-d-learn mailing list