From delta3d Wiki
Jump to: navigation, search

Delta3D External Dependencies

  • The entries marked in bold are new versions since the last release.
  • The pre-compiled binaries and source packages of the External Dependencies are stored in a SVN repository. Browse it!.
  • Or download the packages matched to Delta3D versions from here
  • Note: Qt, Boost.Python, and Python are not included in the External Dependencies. A local installation of Qt, Boost, and Python is required for compiling certain Delta3D projects. See the tutorial How To Build Non-distributed External Dependencies for more information.
  • See the Dependency Breakdown list to see what Delta3D library uses what dependency.
  • The core, required External Dependencies are listed below. Everything else is optional.
    • OpenSceneGraph/OpenThreads
    • Xerces-C
    • Open Dynamics Engine (Single Precision, with Trimesh enabled)

Platform Specific Notes
Windows: Typically, the external dependencies are distributed in a pre-compiled format and referenced by an "ext" folder, located inside the Delta3D folder. This ext folder will contain the .h, .lib, and .dll files used by Delta3D. Ensure the external dependencies have been compiled by the same compiler that will be used to link the libraries (i.e., download the msvc10.0 external dependencies if compiling an application using VS2010).

CMake, by default, will try to find the dependencies in the %DELTA_ROOT%/ext folder, but can be supplied to CMake setting the DELTA3D_EXT_DIR CMake variable.


Trunk (what the Delta3D SVN trunk HEAD will officially compile/link against)

Pull the dependencies source from delta3d-extras Many of the dependencies have been integrated into a package called cegui-deps-0.8.x-src. We need to rename it, but if you run the cmake for that, it will build a lot of the dependencies for both CEGUI and many of the ones for delta3d. You need to have boost, threading building blocks, and openal already built before running it. On linux, many of the things in that package should/can be installed on the system.

On Ubuntu 15.10

Install the following packages using apt-get libboost-all-dev gdal libopenal-dev libtiff-dev libsilly-dev libxerces-c-dev libpcre++-dev libopenexr-dev libtbb-dev libopenvdb-dev

Then build the cegui-deps-0.8.x-src package. There is a buildLinux.sh script for that will enable only what was needed on the latest ubuntu (15.10 at the time of writing this).
Then build bullet, pal, install a binary Qt, OSG, osgEphemeris, osgPPU.

Look around for the build scripts for linux in the dependencies checkout. You may need to edit some paths in basebuild.sh, and you may need to set a few ENV vars it needs like DEV and EXT.

There is also a buildOSX.sh that will also setup some static dependencies to build the CEGUI xcode project. You many need to edit the script to get paths right.

Many of the other dependencies have shell scripts to build for linux or OS X. Only CEGUI uses an xcode project on OS X.

Qt 4.8.6 or 5.5.x (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST 1.59.0. Needed for GNE and OpenVDB. GNE just needs the headers.
CAL3D - based on the trunk
CPPUNIT 1.13.1
CEGUI 0.7.9 (Xerces xml parser as default and SILLY for imaging. Disable expat, libxml, and tinyxml)
Game Networking Engine 0.75 (SVN Head)
GDAL 2.0.0'
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries on windows, included with OSX, and usually included in linux distributions)
PAL (Physics Abstraction Layer)- trunk

Bullet 2.83.6 (2.81 and greater may work) (Optional, built as a PAL plugin) We use a CPU multithreaded fork of bullet we have on github. You can co the source from delta3d-extras.

OpenSceneGraph 3.4.1'
PLIB (now integrated into dtInputPLIB, no longer an external dependency)

XERCES 3.1.2

for dtVoxel

OpenVDB 3.0 or 3.1 which requires:
Threading Building Blocks - 4.3 - 2015/03/16 or better
OpenEXR 2.2
Log4c++ (optional)

We had to modify OpenVDB to work on windows, so you should build the one in the delta3d source dependencies as described above.

2.8.0

Qt 4.8.6 (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST Python 1.55.0 (Only distributes headers required for GNE)
CAL3D - based on the trunk
CPPUNIT 1.13.0
CEGUI 0.7.9 (Xerces xml parser as default and SILLY for imaging. Disable expat, libxml, and tinyxml)
Game Networking Engine 0.75 (SVN Head)
GDAL 1.9.1
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries)
Open Dynamics Engine 0.12
PAL (Physics Abstraction Layer)- PreRefactor branch Bullet 2.82 (Optional, built as a PAL plugin)

OpenSceneGraph 3.2.1
PLIB (now integrated into dtInputPLIB, no longer an external dependency) XERCES 3.1.1

2.7.5

OpenDIS 2.5
Qt 4.7.3 (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST Python 1.44.0 (Not distributed - required for the Delta3D Python Bindings)
PYTHON 2.7.2 (Not distributed - required for the Delta3D Python Bindings)
CAL3D 0.11.0
CPPUNIT 1.12.0
CEGUI 0.7.5 (Xerces xml parser as default)
Game Networking Engine 0.75 (SVN Head)
GDAL 1.9.1
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries)
Open Dynamics Engine 0.11.1
OpenSceneGraph 3.0.1
PLIB 1.8.5
-JS
-UL
XERCES 3.1.1

2.7.0

OpenDIS 2.5
Qt 4.7.3 (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST Python 1.44.0 (Not distributed - required for the Delta3D Python Bindings)
-PYTHON 2.7.2 (Not distributed - required for the Delta3D Python Bindings)
CAL3D 0.11.0
CPPUNIT 1.12.0
CEGUI 0.7.5
Game Networking Engine 0.75 (SVN Head)
GDAL 1.8.0
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries)
Open Dynamics Engine 0.11.1
OpenSceneGraph 2.8.5
PLIB 1.8.5
-JS
-UL
XERCES 3.1.1

2.5.0

OpenDIS 2.5
Qt 4.6.3 (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST Python 1.44.0 (Not distributed - required for the Delta3D Python Bindings)
-PYTHON 2.6.6 (Not distributed - required for the Delta3D Python Bindings)
CAL3D 0.11.0
CPPUNIT 1.12.0
CEGUI 0.7.2
Game Networking Engine 0.75 (SVN Head)
GDAL 1.7.2
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries)
Open Dynamics Engine 0.11.1
OpenSceneGraph 2.8.3
PLIB 1.8.5
-JS
-UL
XERCES 3.1.1

2.4.0

OpenDIS 2.5
Qt 4.5.3 (Not distributed - some Delta3D projects require a local Qt installation to compile.)
BOOST Python 1.38.0 (Not distributed - required for the Delta3D Python Bindings)
-PYTHON 2.5 (Not distributed - required for the Delta3D Python Bindings)
CAL3D 0.11.0
CPPUNIT 1.12.0
CEGUI 0.6.2b
Game Networking Engine 0.75 (SVN Head)
GDAL 1.6.2
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (binaries)
Open Dynamics Engine 0.11.1
OpenSceneGraph 2.8.2
PLIB 1.8.5
-JS
-UL
XERCES 2.8.0

2.3.0

OpenDIS 2.5
CAL3D 0.11.0
CppUnit 1.12.0
Crazy Eddie's GUI System 0.6.2b
-OpenGLRenderer
-SILLYImageCodec
-TGAImageCodec
-ExpatParser
-FalagardWR
Game Networking Engine 0.70
GDAL 1.6.0
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (from Creative's SDK)
Open Dynamics Engine 0.10.1 (Single, DLL)
OpenSceneGraph 2.8.0
PLIB 1.8.5
-ul
-js
Xerces 2.8.0

2.2.0

OpenDIS 2.5
Qt 4.4.3
-Only the dynamic libraries are included in the external dependency package. Some Delta3D applications will need a local Qt installation to compile.
Boost 1.35.0
CAL3D 0.11.0
CppUnit 1.12.0
Crazy Eddie's GUI System 0.6.1
-OpenGLRenderer
-SILLYImageCodec
-TGAImageCodec
-ExpatParser
-FalagardWR
FLTK 1.1.9
Game Networking Engine 0.70
GDAL 1.5.2
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (from Creative's SDK)
Open Dynamics Engine 0.10.1 (Single, DLL)
OpenSceneGraph 2.6.1
PLIB 1.8.5
-ul
-js
Xerces 2.8.0


2.1.0

DisCppJava 1.2 from the Extensible Modeling and Simulation Framework (XMSF) project
Qt 4.4.1 (GPL Version)
-Only the dynamic libraries are included in the external dependency package. Some Delta3D applications will need a local Qt installation to compile.
Boost 1.35.0
-Boost.Python. Only the dynamic libraries are included in the external dependency package. Delta3D Python bindings will need a local Python and Boost.Python installation to compile.
CAL3D 0.11.0
CppUnit 1.12.0
Crazy Eddie's GUI System 0.6.1
-OpenGLRenderer
-SILLYImageCodec
-TGAImageCodec
-ExpatParser
-FalagardWR
FLTK 1.1.9
Game Networking Engine 0.70
GDAL 1.5.2
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (from Creative's SDK)
Open Dynamics Engine 0.10.1 (Single, DLL)
OpenSceneGraph 2.6.0
PLIB 1.8.5
-ul
-js
Xerces 2.8.0


2.0.0

DisCppJava 1.2 from the Extensible Modeling and Simulation Framework (XMSF) project
Qt 4.3.2 (GPL Version)
Boost 1.34.1 (Boost.Python, which needs BJam to build) [using in conjunction with Python 2.5]
CAL3D 0.11.0
CppUnit 1.12.0
Crazy Eddie's GUI System 0.5.0
FLTK 1.1.7
Game Networking Engine 0.70
GDAL 1.4.3
InterSense Interface Libraries SDK 3.83
HawkNL 1.68
ALUT 1.1.0
OpenAL 1.1 (from Creative's SDK)
Open Dynamics Engine 0.9
OpenSceneGraph 2.2.0
PLIB 1.8.4
-ul
-js
ReplicantBody 2006-08-11
Xerces 2.8.0