Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > [ANN] rb++ / rbgccxml 0.8

Thread Tools

[ANN] rb++ / rbgccxml 0.8

Jason Roelofs
Posts: n/a
= What is rb++ / rbgccxml?

For anyone who wants an alternative to SWIG for generating Ruby
extensions from C++ header files, look no further. Generating Ruby
extensions has never been easier!

The last few months have seen a slew of work on rb++ and rbgccxml,
enough so that I feel the project is getting pretty close to a 1.0

There are so many changes to the two libraries that it would be very
time-consuming to list them all out, but the highlights are:

Complete new system for managing how code is wrapped, from including /
excluding and renaming nodes to be added to the extension.

Much more robust and capable query system to help find whatever part
of the C++ code you're looking for.

== Project


Project Page:

== Installation

This single command will grab the whole stack needed for rb++ to work.

gem install rbplusplus

The stack includes three libraries: rb++, rbgccxml, and gccxml_gem and
will install rice

== rb++

Rb++ makes it almost trivially easy to create Ruby extensions for any
C or C++ library / code. In the simplest of cases, there is no need to
ever touch C, everything is done in a very simple and clean Ruby API.

== rbgccxml

RbGCCXML allows one to easily parse out and query C++ code. This
library uses GCC-XML to parse out the C++ code into XML, and then
Hpricot to parse and query that XML.

== gccxml_gem

GCC-XML ( is an application that takes takes the parse
tree of G++ and constructs a very parsable and queryable XML file with
all related information.

The third part of the stack is this gem that includes a binary build
of GCC-XML for your platform, to make it trivially easy to install.
Platforms currently supported are:

* Linux 32 & 64 bit
* Mac OS X
* Windows 32-bit via Cygwin

== Requirements

* rice ( - The C++ interface for Ruby
* hpricot ( - Does the XML parsing
* test/spec - For running the tests

== Code

All code is hosted at github


== Notes

Released under the MIT licence.

For those familiar with py++ / pygccxml, the similarities are in
function only. Rb++ / rbgccxml were written from scratch to take
advantage of the Ruby language to it's fullest.

Bugs, patches, feature requests, et al should be posted to the
project's tracker.

Discussion can be here or the project's rubyforge forums.

Reply With Quote

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
[ANN] rb++ / rbgccxml 0.9 Jason Roelofs Ruby 0 10-26-2009 07:30 PM
rbgccxml / rbplusplus gem dependency on hpricot question Axel Etzold Ruby 5 08-18-2008 07:15 PM
rbgccxml dependency on hpricot question Axel Etzold Ruby 0 08-11-2008 08:52 AM
[ANN] rb++ / rbgccxml 0.1.1 bugfix release Jason Roelofs Ruby 2 05-12-2008 05:28 PM
[ANN] rb++ / rbgccxml 0.1 released! Jason Roelofs Ruby 0 05-05-2008 05:32 PM