Page 1 of 1

Build instructions for debian7 "wheezy" (amd64)

Posted: Sun Sep 01, 2013 6:54 am
by sgn
I don't wanna be the "your ouput is flawed and I have no respect"-kinda guy, so I'm simply raising the question; anyone see the need for a quick guide on having 1.26x running on debian stable in no time? Lemme know and I'll spell out the steps with a really core debian x86/64 install.

UPDATE: Build instructions posted and I'd like feedback from other users. If you have a good tweak or modification, share them here in unison.
sgn wrote:So, this is for a core debian 7 x64 install, just base-files and make/gcc/g++.

1: Once you trust your core, proceed to step 2.
2: Run

Code: Select all

apt-get install libav-tools libswscale-dev libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev ffmpeg libx264-dev  apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm subversion automake autoconf apache2-mpm-prefork libapache2-mod-php5 php5-cli libtool libgnutls-dev
This will install dependencies for building ZM later on; thats all folks.

3: Get libjpeg-turbo and have it replace any other depency on older versions for zero-configuration
http://sourceforge.net/projects/libjpeg ... z/download

Code: Select all

./configure --prefix=/usr --with-libdir=/usr/lib --with-jpeg8 --without-mem-srcdst
make
make-install
4: Get latest ZM (as of now version 1.26b3)
https://github.com/ZoneMinder/ZoneMinde ... a.3.tar.gz

Code: Select all

libtoolize --force
aclocal
autoheader
automake --force-missing --add-missing
autoconf

./configure --prefix=/usr/local/zm --enable-debug=no --enable-crashtrace=no --enable-mmap=yes --with-libarch=lib64 --with-mysql=/usr/bin --with-ffmpeg=/usr/bin --with-webdir=/var/www/zm --with-cgidir=/var/www/zm/cgi-bin --with-webuser=www-data --with-webgroup=www-data
make
make-install
5: Create mysql db from the .sql script (zm-create) and assign access to zmuser
6: Add site to apache sites-enabled (remember disabling autoindex and maybe status), restart apache2 and we're live
7: Optionally, move zm events to assigned storage, use disk encryption, set up some firewalling and harden the system etc. etc.
8: Optionally insert

Code: Select all

tmpfs /dev/shm tmpfs size=Xg 0 0
(X being gigabytes) to your fstab, on non-swap systems there might be a significant memory restraint impairing your zm-operations.


*1: Manual db-upgrade/rename from beta->stock 1.26.2 mysql command:

Code: Select all

"use ZONEMINDERDBBNAME" and "update Config set Value="1.26.2" where name="ZM_DYN_DB_VERSION";"

Re: Build instructions are elusive/borderline irresponsibly

Posted: Sun Sep 01, 2013 7:50 am
by Flasheart
Yes please!

I did some notes on getting it built on debian for the first beta, but they were a long way from complete and I for one would appreciate a simple howto.

And if anyone can package well once the final is released....

Re: Build instructions are elusive/borderline irresponsibly

Posted: Tue Sep 03, 2013 2:14 pm
by kylejohnson
Hey guys. This is something that I definitely want to work on. Contributions are very welcome.

A good starting point might be to follow my install script (https://github.com/kylejohnson/puppet-zoneminder)
If you run that script, you'll have ZM 1.26 system from source.

Re: Build instructions are elusive/borderline irresponsibly

Posted: Wed Sep 04, 2013 9:16 pm
by sgn

Code: Select all

Reserved for future comment

Re: Build instructions for debian7 "wheezy" (amd64)

Posted: Sat Sep 14, 2013 12:10 am
by sgn
The above is confirmed working with 1.26.3.

Re: Build instructions for debian7 "wheezy" (amd64)

Posted: Sun Sep 15, 2013 9:41 pm
by jomifo
Thanks for these instructions. They've worked so far for me.

One question- Another post instructed to use libjpeg-turbo-devel, whereas yours instructs libjpeg-turbo. Will the new performance gains be there with libjpeg-turbo or is the -devel library necessary?

Re: Build instructions for debian7 "wheezy" (amd64)

Posted: Sun Sep 15, 2013 11:34 pm
by knight-of-ni
jomifo wrote: One question- Another post instructed to use libjpeg-turbo-devel, whereas yours instructs libjpeg-turbo. Will the new performance gains be there with libjpeg-turbo or is the -devel library necessary?
Careful. You are comparing an rpm based distro to a debain based distro.
For CentOS, if I want to use libjpegturbo, all I need is the libjpeg-turbo pacakge. If I want to compile against libjpeg-turbo, I also need the header files which are found in the libjpeg-turbo-devel package. I was making an assumption that ClearOS (also rpm based) was similar.

This is not necessarily true for debian. They have their own way of doing things and might have everything in one package.

Re: Build instructions for debian7 "wheezy" (amd64)

Posted: Sun Sep 15, 2013 11:41 pm
by sgn
It would seem there is no libjpeg-turbo package for Debian wheezy. This becomes truly painful if you wish to have php5-gd installed for thumbnail generation; it depends in libjpeg8 which in turn fraks up the libjpeg-turbo workaround above.

I can't seem to get h264 live streaming working with eyeZm, any suggestions?