The HOOPLE Libraries (version 1.0)

[Hierarchical Object-Oriented Programming Language Extensions]

hoople crest

Please consider donating to the hoople project: Support This Project

Note: this is the web page for the hoople 1.0 project, which has just been retired.  For the current documentation, please see the hoople2 page at:
       http://hoople.org

    HOOPLE is a collection of C++ libraries, applications and test programs.  It is hierarchical in nature in that each library is allowed to build upon the services of all lower-level libraries.  The lowest level library is called "basis", and it has both the most fundamental and the most widely used classes.  The HOOPLE source code is distributed under the GNU General Public License.  Copy it far and wide, use it for your own personal tasks however you please, but if you publish programs based on HOOPLE, then they must also follow the GNU GPL.
    Please send feedback & changes to the [Administrator].  The project page is located at SourceForge.  In the following documentation, we will abbreviate HOOPLE as hoople.

hoople version 1.714.3191.0 packaged on Saturday January 28 2012 06:32:09 AM

hoople Download

  • The full collection of hoople libraries and applications is here: hoople1_library.tar.gz
  • The third-party libraries used for win32 compilation is here: 3rdparty_support.tar.gz
  • The hoople libraries use the CLAM Makefile System for compilation.  A version of CLAM is already included in the hoople archive.
  • Search Engine and Curious Friendly Code Root (points at the top of the hoople source code)

CVS Access at SourceForge

  1. Login and retrieve the hoople codebase:
    cvs -d:pserver:anonymous@hoople-org.cvs.sourceforge.net:/cvsroot/hoople-org login
         (just hit Enter when asked for a password)
    cvs -z3 -d:pserver:anonymous@hoople-org.cvs.sourceforge.net:/cvsroot/hoople-org co -kb -P hoople
  2. Optional: Retrieve the hoople 3rdparty dependencies for win32 (only needed for windows compilation).
    cd hoople  (change directory to hoople download location)
    cvs -z3 -d:pserver:anonymous@hoople-org.cvs.sourceforge.net:/cvsroot/hoople-org co -kb -P 3rdparty

hoople Documentation

C++ Class Reference

There is fairly substantial automatically generated documentation for hoople here: hoople1/docs/html/index.html
This is generated by doxygen, which creates cross-referenced documentation with dependency charts.

Quick Start Guide

  1. Getting hoople and doing the first build:
    1. download hoople (see above).  if you get a tar.gz file, untar (tar -xzf) it into your home folder as ~/hoople1.
    2. if you do not yet have bash and other unix apps, see the link "Setting up CLAM" for information on how to obtain them.
    3. execute this command (assuming hoople1 is in your home folder): bash ~/hoople1/build/generator/bootstrap_build.sh
    4. this should run for a while, and it will end up generating many shared libraries, applications and tests in the binaries folder.
  2. Preparing for further software builds:
    1. run this command in your current shell:
          bv=~/hoople1/build/generator/build_variables.sh; source $bv $bv
    2. go to anywhere in the hoople1 hierarchy where you want to build code and type:
         make
  3. Running hoople applications and tests:
    1. add this to your current environment or to your .bashrc:
          export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$REPOSITORY_DIR/binaries
    2. launch the application from the exe directory or from the tests hierarchy, and it should now find the hoople shared libraries.