Building Debian packages

From NetXMS Wiki
Revision as of 13:44, 20 July 2015 by Tomas Kirnak (talk | contribs)
Jump to navigation Jump to search

Required packages and libraries

Install required packages and libraries:

apt-get install debootstrap devscripts git debhelper dh-autoreconf debconf libssl-dev zlib1g-dev libexpat1-dev libsensors4-dev libjansson-dev libreadline-dev libsqlite3-dev libmysqlclient-dev libcurl4-openssl-dev libpq-dev libldap2-dev libaio1 unixodbc-dev openjdk-7-jdk maven

Next you need the Oracle Instant Client from:
32bit: http://www.oracle.com/technetwork/topics/linuxsoft-082809.html
64bit: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

Agree to the license and get the download link after signing in.

After download, run:

sudo unzip -x -d /opt instantclient-basiclite-linux*-11.2.0.4.0.zip
sudo unzip -x -d /opt instantclient-sdk-linux*-11.2.0.4.0.zip
sudo ln -s libclntsh.so.11.1 /opt/instantclient_11_2/libclntsh.so

Building packages

mkdir ./nxms-packaging && true;
mkdir ./nxms-packages && true;
cd ./nxms-packaging;
if [ -e .git ]; then
  git pull
else
  git clone http://git.netxms.org/public/netxms.git --branch develop ./
fi
./reconf;
./configure --with-dist;
make dist;
make distclean;
mkdir deb_packages && true;
mv netxms-*.tar.gz ./deb_packages
cd ./deb_packages
rename s/netxms-/netxms_/ netxms-*.tar.gz
rename s/.tar.gz/.orig.tar.gz/ netxms_*.tar.gz
tar xfz netxms_*.orig.tar.gz;
cd netxms-*;

After this modify the change-log in 'debian/changelog'.

After changelog is modified, run:

dpkg-buildpackage -us -uc;
cd ..;
mv *.deb ../../nxms-packages;
rm -r netxms_*;
rm -r netxms-*;
cd ../../nxms-packages;
ls -l;