|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
== CHANGELOG
=== 0.1.1 * rb++: Added rice as a gem dependency * rb++: explicitly requiring fileutils now * all: Added ldflags / cxxflags options for passing in other custom command line arguments * gccxml: Error message about how to fix the file execution flags is now consistent across platforms. == What is rb++ / rbgccxml? For anyone who wants an alternative to SWIG for generating Ruby extensions from C++ header files, look no further. == Project Documentation: http://rbplusplus.rubyforge.org Project Page: http://rubyforge.org/projects/rbplusplus == 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 also installs 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. As this is an 0.1 release, not all of C++ is supported. The current constructs that rb++ can wrap are: * functions * classes * class methods * static class methods Rb++ allows one to define Ruby Modules and put wrapped code in them as well. == 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 (www.gccxml.org) 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 10.5 (may have an issue with 10.4 or lower, need to test these) * Windows 32-bit via Cygwin == Requirements * rice (http://rice.rubyforge.org) - The C++ interface for Ruby * hpricot (http://code.whytheluckystiff.net/hpricot/) - Does the XML parsing * test/spec - For running the tests == Code All code is hosted at github rb++: http://github.com/jameskilton/rbplusplus/tree/master rbgccxml: http://github.com/jameskilton/rbgccxml/tree/master gccxml_gem: http://github.com/jameskilton/gccxml_gem/tree/master == 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. |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
-------- Original-Nachricht -------- > Datum: Tue, 13 May 2008 02:04:08 +0900 > Von: "Jason Roelofs" <jameskilton@gmail.com> > An: ruby-talk@ruby-lang.org > Betreff: [ANN] rb++ / rbgccxml 0.1.1 bugfix release > == CHANGELOG > > === 0.1.1 > > * rb++: Added rice as a gem dependency > * rb++: explicitly requiring fileutils now > * all: Added ldflags / cxxflags options for passing in other custom > command line arguments > * gccxml: Error message about how to fix the file execution flags is > now consistent across platforms. > > > == What is rb++ / rbgccxml? > > For anyone who wants an alternative to SWIG for generating Ruby > extensions from C++ header files, look no further. > > == Project > > Documentation: http://rbplusplus.rubyforge.org > > Project Page: http://rubyforge.org/projects/rbplusplus > > == 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 > also installs 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. > > As this is an 0.1 release, not all of C++ is supported. The current > constructs that rb++ can wrap are: > > * functions > * classes > * class methods > * static class methods > > Rb++ allows one to define Ruby Modules and put wrapped code in them as > well. > > == 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 (www.gccxml.org) 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 10.5 (may have an issue with 10.4 or lower, need to test these) > * Windows 32-bit via Cygwin > > == Requirements > > * rice (http://rice.rubyforge.org) - The C++ interface for Ruby > * hpricot (http://code.whytheluckystiff.net/hpricot/) - Does the XML > parsing > * test/spec - For running the tests > > == Code > > All code is hosted at github > > rb++: http://github.com/jameskilton/rbplusplus/tree/master > rbgccxml: http://github.com/jameskilton/rbgccxml/tree/master > gccxml_gem: http://github.com/jameskilton/gccxml_gem/tree/master > > == 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. Dear Jason, thanks for your work ! This is really, really nice. I have a suggestion for the documentation. Would it possible to include some explicit easy examples in the documentation, to demonstrate how to extend Ruby with a function, a class , a module written in C++, somewhat like what Mark Volkmann has done for the tradition C/Ruby extension here : http://www.ociweb.com/mark/programmi...Extensions.pdf ? This might save people some time from digging into the test directory and demonstrate how much easier life becomes through your gem. Thank you very much agaian for your nice work ! Best regards, Axel like eg., the ones -- Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
On 5/12/08, Axel Etzold <AEtzold@gmx.de> wrote:
> > -------- Original-Nachricht -------- > > Datum: Tue, 13 May 2008 02:04:08 +0900 > > Von: "Jason Roelofs" <jameskilton@gmail.com> > > An: ruby-talk@ruby-lang.org > > Betreff: [ANN] rb++ / rbgccxml 0.1.1 bugfix release > > > > =3D=3D CHANGELOG > > > > =3D=3D=3D 0.1.1 > > > > * rb++: Added rice as a gem dependency > > * rb++: explicitly requiring fileutils now > > * all: Added ldflags / cxxflags options for passing in other custom > > command line arguments > > * gccxml: Error message about how to fix the file execution flags is > > now consistent across platforms. > > > > > > =3D=3D What is rb++ / rbgccxml? > > > > For anyone who wants an alternative to SWIG for generating Ruby > > extensions from C++ header files, look no further. > > > > =3D=3D Project > > > > Documentation: http://rbplusplus.rubyforge.org > > > > Project Page: http://rubyforge.org/projects/rbplusplus > > > > =3D=3D 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 > > also installs rice > > > > =3D=3D 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. > > > > As this is an 0.1 release, not all of C++ is supported. The current > > constructs that rb++ can wrap are: > > > > * functions > > * classes > > * class methods > > * static class methods > > > > Rb++ allows one to define Ruby Modules and put wrapped code in them as > > well. > > > > =3D=3D 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. > > > > =3D=3D gccxml_gem > > > > GCC-XML (www.gccxml.org) 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 10.5 (may have an issue with 10.4 or lower, need to test th= ese) > > * Windows 32-bit via Cygwin > > > > =3D=3D Requirements > > > > * rice (http://rice.rubyforge.org) - The C++ interface for Ruby > > * hpricot (http://code.whytheluckystiff.net/hpricot/) - Does the XML > > parsing > > * test/spec - For running the tests > > > > =3D=3D Code > > > > All code is hosted at github > > > > rb++: http://github.com/jameskilton/rbplusplus/tree/master > > rbgccxml: http://github.com/jameskilton/rbgccxml/tree/master > > gccxml_gem: http://github.com/jameskilton/gccxml_gem/tree/master > > > > =3D=3D 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. > > > Dear Jason, > > thanks for your work ! This is really, really nice. > I have a suggestion for the documentation. > Would it possible to include some explicit easy examples in the document= ation, to demonstrate how to extend Ruby with a function, > a class , a module written in C++, somewhat like what Mark Volkmann > has done for the tradition C/Ruby extension here : > > > http://www.ociweb.com/mark/programmi...Extensions.pdf ? > > This might save people some time from digging into the test directory > and demonstrate how much easier life becomes through your gem. > > Thank you very much agaian for your nice work ! > > Best regards, > > Axel > > > > like eg., the ones > > -- > Psssst! Schon vom neuen GMX MultiMessenger geh=F6rt? > Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger > > Most definitely. Documentation will be as constantly changing as the code-base itself. I threw together a quick sample for both rb++ and rbgccxml, though you're rigth, it will work better right in the documentation. I'll get some pages up with detailed samples and examples. Jason |
|
![]() |
| Outils de la discussion | |
|
|