Purpose of this page
This page is intent to share the experience of building the GENIVI IVI software as a newbie. For the time being it only described the how-to for desktop build. For target build, see this page.(TBD) NB: The hints are not supposed to be the only way to proceed, it's just a way.
To build the GENIVI IVI software it's required first:
- To install Franca IDL and CommonAPI
- To install dlt
The build of the GENIVI IVI software itself is detailed into the README included into the repositories. This page only lists the additional packages required for being able to build this software.
Build the stuff on Ubuntu 15.10 64 bits under VMware
VMware player 7.1.2 build-2780323
sudo apt-get install subversion git cmake
Franca IDL and CommonAPI
sudo apt-get install default-jre icedtea-plugin
Download and unzip eclipse: eclipse-java-mars-R-linux-gtk-x86_64.tar.gz
Launch eclipse and update it.
Through the market place install: cdt and xtend
Add new software:
DBus EMF: (Current) https://github.com/kbirken/dbus-emf-model | (Deprecated) http://dbus-emf-model.eclipselabs.org.codespot.com/git/update_site/releases/
Download and install Franca 0.9.1: jar:file:/site_franca_0.9.1.201412191134.zip!/
clone version 3.1.2 of the common api stuff NB: For the time being this version has been tested, goal is to use the 3.1.3 sudo apt-get install ascii-doc ascii-doc
For common api dbus tools, there're two errors to fix:
mvn -Dtarget.id=org.genivi.commonapi.dbus.target clean verify
And into the file org.genivi.commonapi.dbus.target/org.genivi.commonapi.dbus.target
it's needed to modify the wrong path ../../ascgit017.CommonAPI-Tools/ to the path of common api tools
NB: Don't forget to configure the ~/.m2/settings.xml
Patched version of DBus
- Under Ubuntu 14.04 LTS 32 bits, no issues:
Download the dbus-1.8.14 Apply the patch (under common api dbus runtime) sudo apt-get install expat libexpat1-dev Build and install (under /usr/local)
- Under Ubuntu 15.10 64 bits, that's another story...
CommonAPI DBus library requires LIBDBUS_1_3 The version of dbus that has to be >= 1.10.0 According to that: http://permalink.gmane.org/gmane.comp.freedesktop.dbus/16374 On platforms with ELF symbol versioning, all public symbols are versioned LIBDBUS_1_3.
It builds correctly, but when the distro is restarted, there's an issue to be fixed because of systemd The only way to avoid it is to install the patched DBus somewhere else (i.e. not under /usr/local)
sudo apt-get install zlib1g-dev libdbus-1-dev qt5-qmake qtbase5-dev-tools qtbase5-dev
Clone and follow the install recommendations:
sudo apt-get install libdbus-cpp-dev libdbus-c++-dev libglib2.0-dev sqlite3 libsqlite3-dev
sudo apt-get install qttools5-dev-tools qtdeclarative5-dev libglibmm-2.4-dev libxml++2.6-dev libgtk-3-dev
sudo apt-get install qtcreator qtcreator-dbg