As a Mac developer, you should have Xcode 5.0 installed, which comes with Clang 5.0 (based on LLVM 3.3svn), which is roughly equivalent to open-source Clang 3.3.
-Kevin On Sep 27, 2013, at 8:51 PM, KENZ gelsoft <kenz.gels...@gmail.com> wrote: > I tried rust-bindgen finally, and it worked excellently. Great work!! > > Since it requires Clang 3.3 which doesn't exist on OS X 10.8 setup, > I tried commit 3d49dbbbb7bcc0cf63b43a16a6cf52480fa9b752 and some tweak. > > And some arguments are needed, for my project: > > $ ./bindgen -x c++ ../wxRust/wxHaskell/wxc/src/include/wxc.h > `wx-config --cflags` --include stdint.h --include time.h > > ../wxRust/generated.rs > > bindgen is C mode as default like clang or gcc are, so I understand it > requires `-x c++` option, > but I don't know why I have to explicitly include stdint.h and time.h > for size_t and uint8_t. > Do you have another recommended options? > > My codegen.py just handles functions, so handling for other > definitions benefits. > So I want adopt rust-bindgen to generate extern fn part of my binding > for long-term plan. > > Despite I know its Clang requirement changed for bitwidth support, but > as a Mac developer, I don't want to install the Clang 3.3 only for > rust-bindgen, > especially I don't want add a new prerequisite to my library. > Are there a posibility of optional Clang 3.1 support (without bitwidth > support)? > > > > 2013/9/26 Martin DeMello <martindeme...@gmail.com>: >> no, but it might be feasible to add. not sure if it'd fall within the >> scope of bindgen or not, but at least bindgen could emit some sort of >> serialised data structure that would make generating the next level >> binding easier. >> >> martin >> >> On Wed, Sep 25, 2013 at 4:49 PM, KENZ gelsoft <kenz.gels...@gmail.com> wrote: >>> Oh, I didn't know that project, thank you for information. I'll try it. >>> BTW, I chose to make own parser and generator to generate not only extern fn >>> decls but also next-level wrapper such as: >>> >>> trait Frame { >>> pub fn show(&self) { >>> unsafe { >>> wxFrame_Show(self.handle()); >>> } >>> } >>> } >>> >>> or so, would bindgen helps this use case? (c.f. parsed data accessible or >>> so.) >>> >>> Did you try using bindgen on the wxc header file? If there were bits >>> it couldn't handle, I'd be interested in helping fix that. >>> >>> martin >>> >>> On Wed, Sep 25, 2013 at 10:49 AM, KENZ gelsoft <kenz.gels...@gmail.com> >>> wrote: >>>> Hello, everyone. >>>> >>>> I would like to introduce my experimental project, wxRust. >>>> Which is a wxWidgets binding for Rust. >>>> >>>> https://github.com/kenz-gelsoft/wxRust >>>> >>>> This binding is based on the wxHaskell especially its "wxc"*1 >>>> C-Language wxWidgets binding part. >>>> >>>> Currently, it just converts wxc's header file to `extern fn`s and >>>> export them as a rust library. >>>> >>>> Test program has just started working which opens a wxFrame >>>> by calling wxc's C interface from extern fn. >>>> >>>> Current state is pre-alpha experimental state, there's no stable API, >>>> hard to use, but announced here for someone planning similar project. >>>> >>>> I'm planning for next generating simple OOP style wrapper as rust >>>> traits for each classes from wxc's header. >>>> >>>> There is many problems to tackle, for example how it can work >>>> with multitask or, library users can write wx GUI programs easier. >>>> Any helps or feedbacks are welcome. >>>> >>>> *1: [http://www.haskell.org/haskellwiki/WxHaskell#Status] >>>> >>>> >>>> Thanks, >>>> -- >>>> KENZ <kenz.gels...@gmail.com> >>>> >>>> >>>> _______________________________________________ >>>> Rust-dev mailing list >>>> Rust-dev@mozilla.org >>>> https://mail.mozilla.org/listinfo/rust-dev >>>> > _______________________________________________ > Rust-dev mailing list > Rust-dev@mozilla.org > https://mail.mozilla.org/listinfo/rust-dev _______________________________________________ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev