Contents |
You can use the dev packages for knx and z-wave from our mirror or compile them from source (please be aware that the bcusdk source needs tweaking for some platforms like armhf)
apt-get install quilt devscripts libudev-dev libqpidclient2-dev uuid-dev libqpidcommon2-dev libqpidmessaging2-dev \ git libqpidtypes1-dev g++-4.6 libtinyxml2-dev libjsoncpp-dev libyaml-cpp-dev libsqlite3-dev \ libopenzwave1.0-dev libi2c-dev libeibclient-dev intltool libboost-dev libboost-date-time-dev realpath libhdate-dev libcurl4-openssl-dev liblua5.2-dev \ ola-dev cmake libboost-system-dev libboost-filesystem-dev libboost-regex-dev libboost-thread-dev libboost-program-options-dev libaugeas-dev librrd-dev \ libprocps0-dev libcppdb-dev
git clone http://git.agocontrol.com/agocontrol/agocontrol.git
Stable releases are tagged on master. Development happens on the "develop" branch. More details are here: Git
cd agocontrol git checkout develop
For an out of tree build, do this:
mkdir build cd build cmake .. make
If you want to specify build options, run cmake with the "-i" parameter.
If you want to compile with debug info (-g option) run "cmake -DCMAKE_BUILD_TYPE=Debug .." instead of "cmake .."
Change into the git dir and run:
dpkg-buildpackage -b -uc -us
To clean everything execute:
dpkg-buildpackage -tc
You can use the dev packages for knx and z-wave from our mirror or compile them from source (please be aware that the bcusdk source needs tweaking for some platforms like armhf)
apt-get install quilt devscripts libudev-dev libqpidclient2-dev uuid-dev libqpidcommon2-dev libqpidmessaging2-dev \ git libqpidtypes1-dev g++ libtinyxml2-dev libjsoncpp-dev libyaml-cpp0.3-dev libsqlite3-dev \ libopenzwave1.0-dev libi2c-dev libeibclient-dev intltool libboost-dev libboost-date-time-dev realpath libhdate-dev libcurl4-openssl-dev liblua5.2-dev \ libola-dev cmake libboost-system-dev libboost-filesystem-dev libboost-regex-dev libboost-thread-dev libboost-program-options-dev libaugeas-dev librrd-dev \ libprocps-dev libcppdb-dev
This tutorial seems to works only under AMD64.
PLEASE NOTE - This information was written before the release of jessie. It is currently untested.
Because libqpid is not available in testing debian repository (at least at the end of 2014), you have to add unstable packages adding this line to /etc/apt/sources.list:
deb http://ftp.fr.debian.org/debian/ unstable main non-free contrib
Then to allow installing only unstable packages manually, you need to create /etc/apt/preferences file and add these lines inside:
Package: * Pin: release a=testing Pin-Priority: 900 Package: * Pin: release o=Debian Pin-Priority: -10
Install manually qpid packages under aptitude:
libqpidclient2-dev libqpidcommon2-dev libqpidmessaging2-dev libqpidtypes1-dev libqpidclient2 libqpidcommon2 libqpidmessaging2 libqpidtypes1
And install other packages:
apt-get install quilt devscripts libudev-dev uuid-dev git g++-4.6 libtinyxml2-dev libjsoncpp-dev libyaml-cpp-dev libsqlite3-dev \ libopenzwave1.0-dev libi2c-dev libeibclient-dev intltool libboost-dev libboost-date-time-dev realpath libhdate-dev libcurl4-openssl-dev liblua5.2-dev \ ola-dev cmake libboost-system-dev libboost-filesystem-dev libboost-regex-dev libboost-thread-dev libboost-program-options-dev libaugeas-dev librrd-dev
git clone http://git.agocontrol.com/agocontrol/agocontrol.git
Stable releases are tagged on master. Development happens on the "develop" branch. More details are here: Git
git checkout develop
Before compiling, you need to update some files: In debian/control
Alternatively you can remove unnecessary packages to avoid their compilations:
For an out of tree build, do this:
mkdir build cd build cmake .. make
If you want to specify build options, run cmake with the "-i" parameter.
Change into the git dir and run:
dpkg-buildpackage -b -uc -us
To clean everything execute:
dpkg-buildpackage -tc
This script can be helpful to automatize compilation and packages build process
rm *.deb *.changes mv agocontrol/debian/control agocontrol/debian/control.bak cp control agoco herentrol/debian/control mv agocontrol/devices/CMakeLists.txt agocontrol/devices/CMakeLists.txt.bak cp CMakeLists.txt agocontrol/devices/CMakeLists.txt cd agocontrol/build cmake .. make cd .. dpkg-buildpackage -b -uc -us dpkg-buildpackage -tc cd .. mv agocontrol/debian/control.bak agocontrol/debian/control mv agocontrol/devices/CMakeLists.txt.bak agocontrol/devices/CMakeLists.txt
Install it and copy your debian/control and devices/CMakeLists.txt files just before agocontrol root directory (where packages are built). Then execute this script.
You can create a build environment using a Docker container, as described here