有没有人设法在Ubuntu 14.04上编译rust-bindgen?例如,我不知道如何静态构建和链接到libclang.so
。我每晚使用锈。
答案 0 :(得分:2)
以下只设置可执行文件,而不是宏。
我假设您已正确设置git
和rustc
。 bindgen将需要一个相当新的rustc来编译。
克隆存储库:
$ git clone https://github.com/crabtw/rust-bindgen
$ cd rust-bindgen
构建库:
$ rustc lib.rs
构建包装可执行文件,链接以前构建的库:
$ rustc -L . bindgen.rs
在Xlib标题上运行可执行文件:
$ ./bindgen -l xlib -o xlib.rs /usr/include/X11/Xlib.h
如果libclang设置错误,可执行文件可能会出现段错误。在这种情况下,预加载正确的库并将正确的选项传递给clang:
$ LD_PRELOAD=/usr/lib/libclang.so ./bindgen -I /usr/lib/clang/3.4.2/include -l xlib -o xlib.rs /usr/include/X11/Xlib.h
要安装正确版本的clang,您可以尝试安装libclang-dev。