Project

General

Profile

Ubuntu Builds

Building for Ubuntu is relatively simple using checkinstall.

Build CEGUI

Dependencies:
libfreetype6,libpcre3,libglu1-mesa,libdevil1c2,liblua5.1-0,libtool,libfribidi0,libfribidi-bin,freeglut3

  1. download and unpack the CEGUI-0.7.9 source
  2. Edit configure file and change ac_default_prefix to /usr instead of /usr/local
  3. save the file
  4. cd into source directory
  5. run './configure --enable-bidirectional-text --disable-python-module --enable-null-renderer --with-default-xml-parser=LibxmlParser’
  6. The output should appear like such:
    ********************************************************************************
    * Crazy Eddie's GUI System - Configuration Results Summary
    ********************************************************************************
    * Library Release Version:                              0.7.9
    *
    * Code options:
    *         Building CEGUI in debug mode:                 no
    *
    * Bi-directional text support:                          yes
    *         Using: external fribidi library
    *
    * Building MinizipResourceProvider:                     no
    *
    * Renderer Modules:
    *         Building OpenGL Renderer:                     yes
    *             Using external GLEW library:              yes
    *         Building Ogre Renderer:                       no
    *         Building Irrlicht Renderer:                   no
    *         Building DirectFB Renderer:                   no
    *         Building Null Renderer:                       yes
    *
    * Image Loading Codec Modules:
    *         Building Corona Image Codec:                  no
    *         Building DevIL Image Codec:                   yes
    *         Building FreeImage Image Codec:               no
    *         Building SILLY Image Codec:                   no
    *         Building STB Image Codec:                     yes
    *         Building TGA Image Codec:                     yes
    *
    *         Default Image Codec will be:                  DevILImageCodec
    *
    * XML Parser Modules:
    *         Building TinyXMLParser:                       yes
    *             Using external TinyXML library:           no
    *         Building ExpatParser:                         yes
    *         Building LibXMLParser:                        yes
    *         Building XercesParser:                        yes
    *         Building RapidXMLParser:                      no
    *
    *         Default XML Parser is:                        LibxmlParser
    *
    * Scripting:
    *         Building Lua scripting module:                yes
    *             Safety checks enabled:                    no
    *         Building tolua++cegui generator:              no
    *             Using external tolua++ library:           yes
    *
    *         Building Python extension module(s):          no
    *
    * Samples Framework:
    *         Building Samples:                             yes
    *         GTK2 based dialog for renderer selection:     no
    *         OpenGL Renderer available in samples:         yes
    *         Irrlicht Renderer available in samples:       no
    *         DirectFB Renderer available in samples:       no
    *         Ogre3D Renderer available in samples:         no
    ********************************************************************************
    
  7. make
  8. run 'sudo checkinstall’
  9. set maintainer, summary, name, version, requires, conflicts, and provides

provides:
cegui

conflicts:
libcegui-mk2-0.7.6

Build OpenSceneGraph

Dependencies: libav-tools,libavbin0,libavcodec54,libavutil52,libopenexr6,libavdevice53,libswscale2,libavformat54,gdal-bin,libgdal1h,libnvtt-bin,libnvtt2,libsdl1.2debian,libcairo2,libboost-filesystem1.54.0,libboost-system1.54.0

Will also require the development files, build-essentials, cmake-qt-gui, and other files as necessary

  1. Download OpenSceneGraph 3.2.1 source from the OSG site
  2. Extract the OSG source
  3. In the terminal, enter the OSG source directory
  4. enter
    sed 's|SET(LIB_POSTFIX "64" CACHE|SET(LIB_POSTFIX "" CACHE|' -i CMakeLists.txt
    1. This sets up the libraries to be installed to lib instead of lib64
  5. Open CMake
    1. Set source code to the source code directory eg. /home/blah/source/osg
    2. Set the build directory to source/build eg. /home/blah/source/osg/build
  6. Configure
  7. Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
  8. Configure
  9. Generate
  10. cd into the build directory
  11. make the project
  12. run 'sudo checkinstall’
  13. set maintainer, summary, name, version, requires, and provides
  14. select not to include the the files created inside the home directory

osgAudio

Install dependencies: libalut0,libopenal1,libvorbis0a,libogg0,libvorbisfile3,openscenegraph-ng

  1. Download and unpack osgAudio 2.0.0
  2. Open CMake and set directories
  3. Configure
  4. Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
  5. Change 0_ENABLE_SUBSYSTEM_FMOD to unchecked
  6. Change 0_ENABLE_SUBSYSTEM_OPENAL to checked
  7. Disable “0_BUILD_EXAMPLES_OSGAUDIO” and “0_BUILD_EXAMPLES_OSGAUDIO_LOWLEVEL”
  8. Configure
  9. Generate
  10. cd into the build directory
  11. make the project
  12. run 'sudo checkinstall’
  13. set maintainer, summary, name, version, requires, and provides
  14. select not to include the the files created inside the home directory

osgCairo

Install dependencies: libcairo2,openscenegraph

  1. Download and unpack osgCairo_DES from NightshadeNG site
  2. Open CMake and set directories
  3. Configure
  4. Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
  5. Configure
  6. Generate
  7. cd into the build directory
  8. make the project
  9. run 'sudo checkinstall’
  10. set maintainer, summary, name, version, requires, and provides
  11. select not to include the the files created inside the home directory

osgPango

Install dependencies: osgcairo,libpango1.0-0,libpangocairo-1.0-0,libpango-1.0-0,openscenegraph

  1. Download and unpack osgPango_DES from NightshadeNG site
  2. Open CMake and set directories
  3. Configure
  4. Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
  5. Configure
  6. Generate
  7. cd into the build directory
  8. make the project
  9. run 'sudo checkinstall’
  10. set maintainer, summary, name, version, requires, and provides
  11. select not to include the the files created inside the home directory

osgEarth

Install dependencies: openscenegraph

  1. Download osgearth 2.5.0 source from the osgEarth site
  2. Extract the osgEarth source
  3. In the terminal, enter the osgEarth source directory
  4. enter
    sed 's|SET(LIB_POSTFIX "64" CACHE|SET(LIB_POSTFIX "" CACHE|' -i CMakeLists.txt
    1. This sets up the libraries to be installed to lib instead of lib64
  5. Open CMake
    1. Set source code to the source code directory eg. /home/blah/source/osgearth
    2. Set the build directory to source/build eg. /home/blah/source/osgearth/build
  6. Configure
  7. Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
  8. Configure
  9. Generate
  10. cd into the build directory
  11. make the project
  12. run 'sudo checkinstall’
  13. set maintainer, summary, name, version, requires, and provides
  14. select not to include the the files created inside the home directory

libtolua++ng

By default, Ubuntu does not include the shared object for libtolua++. This needs to be built from source using scons. Once it is built, you can create a dummy package that contains just this file. To do so, just extract an existing debian package, extract the data and control files, make the changes necessary to the control text file. Place the control files into a DEBIAN folder, delete all unnecessary files, and run dpkg -b libtolua++ (or whatever folder you have these in).

NightshadeNG

Install dependencies: libpcre++0,lua-filesystem,libboost-filesystem1.54.0,libboost-system1.54.0,libglew1.10,freeglut3,libnova-0.14-0,liblua5.2-0,libtolua++ng,osgearth,openscenegraph,cegui,osgaudio,osgcairo,osgpango,libsqlite3-0