Build instructions for debian7 "wheezy" (amd64)

Forum for questions and support relating to the 1.26.x releases only.
Locked
sgn
Posts: 68
Joined: Mon Oct 25, 2004 2:36 pm

Build instructions for debian7 "wheezy" (amd64)

Post 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";"
Last edited by sgn on Sat Sep 14, 2013 12:15 am, edited 7 times in total.
Flasheart
Posts: 342
Joined: Thu Jul 06, 2006 2:27 pm

Re: Build instructions are elusive/borderline irresponsibly

Post 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....
kylejohnson
Posts: 260
Joined: Tue Aug 21, 2007 1:42 pm
Location: Baltimore, MD

Re: Build instructions are elusive/borderline irresponsibly

Post 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.
Idling as gnulnx in #zoneminder on freenode. Come say hi!
sgn
Posts: 68
Joined: Mon Oct 25, 2004 2:36 pm

Re: Build instructions are elusive/borderline irresponsibly

Post by sgn »

Code: Select all

Reserved for future comment
sgn
Posts: 68
Joined: Mon Oct 25, 2004 2:36 pm

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

Post by sgn »

The above is confirmed working with 1.26.3.
jomifo
Posts: 2
Joined: Thu Sep 12, 2013 6:46 pm

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

Post 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?
User avatar
knight-of-ni
Posts: 2404
Joined: Thu Oct 18, 2007 1:55 pm
Location: Shiloh, IL

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

Post 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.
Visit my blog for ZoneMinder related projects using the Raspberry Pi, Orange Pi, Odroid, and the ESP8266
All of these can be found at https://zoneminder.blogspot.com/
sgn
Posts: 68
Joined: Mon Oct 25, 2004 2:36 pm

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

Post 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?
Locked