-
Notifications
You must be signed in to change notification settings - Fork 2
Build Ubuntu
See Dependencies for list of all the external dependencies.
First, become root:
$ sudo su
And install aptitude:
$ apt -y install aptitude
And update your system:
aptitude update -y
And install upgrades:
aptitude upgrade -y
Next, install libraries:
$ aptitude install -y qt5-default qttools5-dev libqt5webkit5-dev qtlocation5-dev libqt5designer5 qtdeclarative5-dev libqt5sensors5-dev qtmultimedia5-dev libqt5svg5-dev libcoin80-dev cmake g++ libreadline6-dev libgsl0-dev zlib1g-dev libpng12-dev libjpeg-dev libncurses5-dev libsvn-dev libsndfile1-dev mercurial python-pip subversion devscripts csh pkg-config libode-dev
Finally, exit the root user:
$ exit
First, grab emergent's source code:
$ git clone https://github.com/emer/cemer
Next, run a script to build Quarter and turn it into a Debian package:
$ package/ubuntu-motu-quarter
And install it:
$ sudo dpkg -i /tmp/libquarter0_1.0-*ubuntu1_*.deb
Start with an optimized build (in cemer source dir):
$ ./configure --qt5 --clean --webkit --suffix=_svn
$ cd build_svn
$ make -j4
And install it to /usr/local/bin/emergent
sudo make install
If you have time, also do a debug build:
$ ./configure --qt5 --clean --webkit --enable-debug
$ cd build_dbg
$ make -j4
And install it to /usr/local/bin/emergent_dbg
sudo make install
Open up ~/.bashrc and make sure that your PATH and LD_LIBRARY_PATH environment variables look something like this:
export PATH=/bin:/usr/bin:/usr/local/bin
export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib
And update your environment:
$ source ~/.bashrc
$ emergent
For debugging:
gdb -ex=run emergent_dbg
If you are running Ubuntu Trusty (14.04) run this:
$ aptitude install -y libode-sp-dev
If you encounter errors regarding libserf linking against symbols found in libssl, set this environent variable before running configure, which will tell the linker to go ahead and link in the static version of libssl:
export CMAKE_SHARED_LINKER_FLAGS=-l:libssl.a
If you have issues with configure finding libGL.so, perhaps you installed the nvidia native binary driver, in which case you need to manually make symlinks from the libGL.so.* files in /usr/lib/ to /usr/lib/x86_64-linux-gnu.
If you get error: ld terminated with signal 9 [Killed], use a system with more memory.
If you get error: CPU you selected does not support x86-64 instruction set, this can be solved by re-running configure in non-native mode:
cd ~/emergent && ./configure --not-native && cd build && make
If you get warning: inline function ‘’ used but never defined [enabled by default] or Wno-undefined-inline you can ignore this error.
If a file that was present during the last time cmake configured itself is subsequently removed, you'll get this kind of install error:
CMake Error at prog_lib/cmake_install.cmake:31 (file):
file INSTALL cannot find
"/Users/oreilly/emergent/prog_lib/ObjectsEnv.prog".
Call Stack (most recent call first):
cmake_install.cmake:105 (include)
To fix this, in your build directory, do:
ccmake ../
then hit c (configure) and then g (generate) then e (exit) sudo make install