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
- download and unpack the CEGUI-0.7.9 source
- Edit configure file and change ac_default_prefix to /usr instead of /usr/local
- save the file
- cd into source directory
- run './configure --enable-bidirectional-text --disable-python-module --enable-null-renderer --with-default-xml-parser=LibxmlParser’
- 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 ********************************************************************************
- make
- run 'sudo checkinstall’
- 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
- Download OpenSceneGraph 3.2.1 source from the OSG site
- Extract the OSG source
- In the terminal, enter the OSG source directory
- enter
sed 's|SET(LIB_POSTFIX "64" CACHE|SET(LIB_POSTFIX "" CACHE|' -i CMakeLists.txt
- This sets up the libraries to be installed to lib instead of lib64
- Open CMake
- Set source code to the source code directory eg. /home/blah/source/osg
- Set the build directory to source/build eg. /home/blah/source/osg/build
- Configure
- Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
- Configure
- Generate
- cd into the build directory
- make the project
- run 'sudo checkinstall’
- set maintainer, summary, name, version, requires, and provides
- select not to include the the files created inside the home directory
osgAudio¶
Install dependencies: libalut0,libopenal1,libvorbis0a,libogg0,libvorbisfile3,openscenegraph-ng
- Download and unpack osgAudio 2.0.0
- Open CMake and set directories
- Configure
- Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
- Change 0_ENABLE_SUBSYSTEM_FMOD to unchecked
- Change 0_ENABLE_SUBSYSTEM_OPENAL to checked
- Disable “0_BUILD_EXAMPLES_OSGAUDIO” and “0_BUILD_EXAMPLES_OSGAUDIO_LOWLEVEL”
- Configure
- Generate
- cd into the build directory
- make the project
- run 'sudo checkinstall’
- set maintainer, summary, name, version, requires, and provides
- select not to include the the files created inside the home directory
osgCairo¶
Install dependencies: libcairo2,openscenegraph
- Download and unpack osgCairo_DES from NightshadeNG site
- Open CMake and set directories
- Configure
- Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
- Configure
- Generate
- cd into the build directory
- make the project
- run 'sudo checkinstall’
- set maintainer, summary, name, version, requires, and provides
- 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
- Download and unpack osgPango_DES from NightshadeNG site
- Open CMake and set directories
- Configure
- Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
- Configure
- Generate
- cd into the build directory
- make the project
- run 'sudo checkinstall’
- set maintainer, summary, name, version, requires, and provides
- select not to include the the files created inside the home directory
osgEarth¶
Install dependencies: openscenegraph
- Download osgearth 2.5.0 source from the osgEarth site
- Extract the osgEarth source
- In the terminal, enter the osgEarth source directory
- enter
sed 's|SET(LIB_POSTFIX "64" CACHE|SET(LIB_POSTFIX "" CACHE|' -i CMakeLists.txt
- This sets up the libraries to be installed to lib instead of lib64
- Open CMake
- Set source code to the source code directory eg. /home/blah/source/osgearth
- Set the build directory to source/build eg. /home/blah/source/osgearth/build
- Configure
- Change CMAKE_INSTALL_PREFIX to /usr instead of /usr/local
- Configure
- Generate
- cd into the build directory
- make the project
- run 'sudo checkinstall’
- set maintainer, summary, name, version, requires, and provides
- 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