Ubuntu Dapper install guide

Support and queries relating to all previous versions of ZoneMinder
jasont.t
Posts: 10
Joined: Thu Aug 10, 2006 10:07 am

Ubuntu Dapper install guide

Post by jasont.t »

Hi,
I've just completed an installation of Zoneminder on Ubuntu dapper and thought some of you might be interested in the steps I did:

***Installing on Ubuntu (Dapper)

***Pre install tasks*******
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install php5-mysql
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install mysql-server
sudo apt-get install g++
sudo apt-get install libclass-manip-perl
sudo apt-get install libmysqlclient12-dev
sudo apt-get install libcurl3-openssl-dev
sudo apt-get install libjpeg-mmx-dev
sudo apt-get install liblwp-protocol-http-socketunix-perl

wget http://www2.zoneminder.com/downloads/Zo ... 2.2.tar.gz

tar -xvzf ZoneMinder-1.22.2.tar.gz

cd ./ZoneMinder-1.22.2

*****Installation Tasks************
./configure --with-webdir=/var/www/zm --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data

mysql mysql < db/zm_create.sql

mysql mysql

mysql> grant select,insert,update,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';

mysql> quit

mysqladmin reload

make install

****Post Installation****
This next step is meant to make Zoneminder start on boot up however,
it doesn't do that yet. If anyone and let me know how that would be great.
****
cp ./ZoneMinder-1.22.2/scripts/zm /etc/init.d/zm

chmod +x /etc/init.d/zm
sudo apt-get install update-rc.d
sudo update-rc.d zm defaults
jameswilson
Posts: 5111
Joined: Wed Jun 08, 2005 8:07 pm
Location: Midlands UK

Post by jameswilson »

Thanks Jason this will be useful im sure, would you like to add it to the wiki mate
James Wilson

Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
malaxi
Posts: 2
Joined: Sat Aug 12, 2006 6:02 am

Post by malaxi »

Great info! I wish I had seen it 3 hours ago, it would have saved me a bunch of time :-)

I did the same install this evening, except I had to do one more step - bump up the amount of shared memory available. I did this by adding:

kernel.shmall = 134217728
kernel.shmmax = 134217728

to my /etc/sysctl.conf file and running 'sysctl -p'.

Until I did that, I was getting shared memory errors in the log files, and no images in the monitors.

(I also built with ffmpeg, but that's a whole 'nother kettle of fish)
jasont.t
Posts: 10
Joined: Thu Aug 10, 2006 10:07 am

Post by jasont.t »

Thanks for your comment Malaxi.

FYI I have uploaded my instructions to the wiki, however I haven't put Malaxi comments in (not sure if I should have). Malaxi please feel free to add you notes.

:D
jameswilson
Posts: 5111
Joined: Wed Jun 08, 2005 8:07 pm
Location: Midlands UK

Post by jameswilson »

you will need the shared mem increase if running above 360x240 res. It is in the FAQ though
James Wilson

Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
User avatar
Scorpuk
Posts: 4
Joined: Wed Aug 16, 2006 10:36 am
Location: Scotland

Post by Scorpuk »

Just installed following your instructions, but I get an error at the end.

Some of the libraries I could not apt-get as I could not find their names, but did as best as I could.

oh and system info can be found here http://scorpuk.plus.com/phpsysinfo/


If you can help it would be great.

Code: Select all

root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# ./configure --with-webdir=/var/www/zm --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
configure: WARNING: You can call configure with the --with-libarch option.
    This tells configure where to find architecture specific libraries.
    The default of 'lib' is usually ok but 64 bit machines may require lib64.
    e.g. --with-libarch=lib or --with-libarch=lib64
configure: WARNING: You can call configure with the --with-mysql option.
    This tells configure where to find the MySql C library and headers if configure cannot
    locate them automatically.
    e.g. --with-mysql=/usr/local or --with-mysql=/usr
configure: WARNING: You can call configure with the --with-ffmpeg option.
    This tells configure where to find the ffmpeg root directory within which are the libavcodec
    and libavformat files that can be used to build true MPEG streaming into ZoneMinder. Ensure that
    your copy of ffmpeg has installed libraries as well as binaries (use 'make installlib'). If you
    are using a local install of ffmpeg you may have to remove or rename a previous real installation
    as the headers and libraries from that will probably be picked up before your local copy.
    e.g. --with-ffmpeg=/usr/local
configure: WARNING: You can call configure with the --with-extralibs option.
    Ordinarily you will need to use this option only when your copy of ffmpeg has been built
    with support for additional formats and you would use this option to detail which additional
    libraries ffmpeg was built with so that it is able to link successfully with ZoneMinder.
    You will need to wrap this option in quotes if it contains any spaces.
    e.g. --with-extralibs="-lmp3lame"
configure: WARNING: You can call configure with the --enable-debug=<yes|no> or --disable-debug option.
    This tells configure whether to compile ZoneMinder with debug included. Although debug is included
    by default it is not output unless explicitly switched on elsewhere. These checks may induce a
    small penalty on performance and if you are after squeezing the maximum possible performance out
    of ZoneMinder you may use this switch to prevent debug from being compiled in.
    e.g. --enable-debug=yes or --disable-debug
configure: WARNING: You can call configure with the --enable-crashtrace=<yes|no> or --disable-crashtrace option.
    This tells configure whether to compile ZoneMinder with crash tracing included. This allows a
    dump of the stack trace when a ZoneMinder binary crashes or is killed by an unexpected signal.
    Although this should work on most systems it does rely on un(or loosely) documented features and
    so should be regarded as experimental. If you experience problems compiling zm_signal.cpp or
    ZoneMinder binaries fail to shut down corrected then you should probably disable this feature.
    e.g. --enable-crashtrace=yes or --disable-crashtrace
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for size_t... yes
checking return type of signal handlers... void
checking for siginfo_t... yes
checking for struct sigcontext... yes
checking for struct sigcontext.eip... no
checking for ucontext_t... yes
checking how to run the C++ preprocessor... g++ -E
checking mysql/mysql.h usability... yes
checking mysql/mysql.h presence... yes
checking for mysql/mysql.h... yes
checking pcre/pcre.h usability... no
checking pcre/pcre.h presence... no
checking for pcre/pcre.h... no
checking pcre.h usability... no
checking pcre.h presence... no
checking for pcre.h... no
checking whether round is declared... yes
checking whether strsignal is declared... yes
checking whether MD5 is declared... yes
checking whether backtrace is declared... yes
checking for jpeg_start_compress in -ljpeg... yes
checking for compress in -lz... yes
checking for dlsym in -ldl... yes
checking for mysql_init in -lmysqlclient... yes
checking for MD5 in -lcrypto... yes
checking for pcre_compile in -lpcre... no
configure: WARNING: libpcre.a may be required for remote/network camera support
checking for ff_gcd in -lavutil... no
configure: WARNING: libavutil.a may be required for MPEG streaming
checking for avcodec_init in -lavcodec... no
configure: WARNING: libavcodec.a is required for MPEG streaming
checking for av_new_stream in -lavformat... no
configure: WARNING: libavformat.a is required for MPEG streaming
checking for perl... perl
checking for perl version greater than or equal to 5.6.0... ok
checking for perl module Sys::Syslog... ok
checking for perl module DBI... ok
checking for perl module DBD::mysql... ok
checking for perl module Getopt::Long... ok
checking for perl module Time::HiRes... ok
checking for perl module Date::Manip... no
configure: error: zm requires Date::Manip
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# ./configure --with-webdir=/var/www/zm --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
configure: WARNING: You can call configure with the --with-libarch option.
    This tells configure where to find architecture specific libraries.
    The default of 'lib' is usually ok but 64 bit machines may require lib64.
    e.g. --with-libarch=lib or --with-libarch=lib64
configure: WARNING: You can call configure with the --with-mysql option.
    This tells configure where to find the MySql C library and headers if configure cannot
    locate them automatically.
    e.g. --with-mysql=/usr/local or --with-mysql=/usr
configure: WARNING: You can call configure with the --with-ffmpeg option.
    This tells configure where to find the ffmpeg root directory within which are the libavcodec
    and libavformat files that can be used to build true MPEG streaming into ZoneMinder. Ensure that
    your copy of ffmpeg has installed libraries as well as binaries (use 'make installlib'). If you
    are using a local install of ffmpeg you may have to remove or rename a previous real installation
    as the headers and libraries from that will probably be picked up before your local copy.
    e.g. --with-ffmpeg=/usr/local
configure: WARNING: You can call configure with the --with-extralibs option.
    Ordinarily you will need to use this option only when your copy of ffmpeg has been built
    with support for additional formats and you would use this option to detail which additional
    libraries ffmpeg was built with so that it is able to link successfully with ZoneMinder.
    You will need to wrap this option in quotes if it contains any spaces.
    e.g. --with-extralibs="-lmp3lame"
configure: WARNING: You can call configure with the --enable-debug=<yes|no> or --disable-debug option.
    This tells configure whether to compile ZoneMinder with debug included. Although debug is included
    by default it is not output unless explicitly switched on elsewhere. These checks may induce a
    small penalty on performance and if you are after squeezing the maximum possible performance out
    of ZoneMinder you may use this switch to prevent debug from being compiled in.
    e.g. --enable-debug=yes or --disable-debug
configure: WARNING: You can call configure with the --enable-crashtrace=<yes|no> or --disable-crashtrace option.
    This tells configure whether to compile ZoneMinder with crash tracing included. This allows a
    dump of the stack trace when a ZoneMinder binary crashes or is killed by an unexpected signal.
    Although this should work on most systems it does rely on un(or loosely) documented features and
    so should be regarded as experimental. If you experience problems compiling zm_signal.cpp or
    ZoneMinder binaries fail to shut down corrected then you should probably disable this feature.
    e.g. --enable-crashtrace=yes or --disable-crashtrace
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for size_t... yes
checking return type of signal handlers... void
checking for siginfo_t... yes
checking for struct sigcontext... yes
checking for struct sigcontext.eip... no
checking for ucontext_t... yes
checking how to run the C++ preprocessor... g++ -E
checking mysql/mysql.h usability... yes
checking mysql/mysql.h presence... yes
checking for mysql/mysql.h... yes
checking pcre/pcre.h usability... no
checking pcre/pcre.h presence... no
checking for pcre/pcre.h... no
checking pcre.h usability... yes
checking pcre.h presence... yes
checking for pcre.h... yes
checking whether round is declared... yes
checking whether strsignal is declared... yes
checking whether MD5 is declared... yes
checking whether backtrace is declared... yes
checking for jpeg_start_compress in -ljpeg... yes
checking for compress in -lz... yes
checking for dlsym in -ldl... yes
checking for mysql_init in -lmysqlclient... yes
checking for MD5 in -lcrypto... yes
checking for pcre_compile in -lpcre... yes
checking for ff_gcd in -lavutil... yes
checking for avcodec_init in -lavcodec... yes
checking for av_new_stream in -lavformat... yes
checking for perl... perl
checking for perl version greater than or equal to 5.6.0... ok
checking for perl module Sys::Syslog... ok
checking for perl module DBI... ok
checking for perl module DBD::mysql... ok
checking for perl module Getopt::Long... ok
checking for perl module Time::HiRes... ok
checking for perl module Date::Manip... ok
checking for perl module LWP::UserAgent... ok
checking for perl module Device::SerialPort... no
configure: WARNING: Device::SerialPort is required for RS232/RS485 PTZ camera control
checking for perl module Net::FTP... ok
checking for perl module Archive::Tar... no
configure: WARNING: Archive::Tar may be required for automatic event uploading
checking for perl module Archive::Zip... no
configure: WARNING: Archive::Zip may be required for automatic event uploading
checking for perl module Net::SMTP... ok
checking for perl module MIME::Lite... no
configure: WARNING: MIME::Lite may be required for automatic event email notification
checking for perl module MIME::Entity... no
configure: WARNING: MIME::Entity may be required for automatic event email notification
checking for perl module X10::ActiveHome... no
configure: WARNING: X10::ActiveHome is required for X.10 support
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating web/Makefile
config.status: creating web/graphics/Makefile
config.status: creating scripts/Makefile
config.status: creating db/Makefile
config.status: creating config.h
config.status: executing depfiles commands
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating web/Makefile
config.status: creating web/graphics/Makefile
config.status: creating scripts/Makefile
config.status: creating db/Makefile
config.status: creating zm.conf
config.status: creating src/zm_config.h
config.status: creating web/zm_config.php
config.status: creating scripts/zm
config.status: creating db/zm_create.sql
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating web/Makefile
config.status: creating web/graphics/Makefile
config.status: creating scripts/Makefile
config.status: creating db/Makefile
config.status: creating zm.conf
config.status: creating src/zm_config.h
config.status: creating web/zm_config.php
config.status: creating scripts/zm
config.status: creating db/zm_create.sql
config.status: creating scripts/ZoneMinder/lib/ZoneMinder/Base.pm
config.status: creating scripts/ZoneMinder/lib/ZoneMinder/Config.pm
config.status: creating scripts/ZoneMinder/lib/ZoneMinder/ConfigAdmin.pm
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
checking for scripts/ZoneMinder/Makefile... no
Checking if your kit is complete...
Looks good
Writing Makefile for ZoneMinder
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# mysql mysql < db/zm_create.sql
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# mysql mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 51 to server version: 5.0.22-Debian_0ubuntu6.06-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> grant select,insert,update,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';
Query OK, 0 rows affected (0.01 sec)

mysql> quit
Bye
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# mysqladmin reload
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2# make install
Making install in src
make[1]: Entering directory `/home/john/Desktop/ZoneMinder-1.22.2/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zmc.o -MD -MP -MF ".deps/zmc.Tpo" -c -o zmc.o zmc.cpp; \
        then mv -f ".deps/zmc.Tpo" ".deps/zmc.Po"; else rm -f ".deps/zmc.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm.o -MD -MP -MF ".deps/zm.Tpo" -c -o zm.o zm.cpp; \
        then mv -f ".deps/zm.Tpo" ".deps/zm.Po"; else rm -f ".deps/zm.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_db.o -MD -MP -MF ".deps/zm_db.Tpo" -c -o zm_db.o zm_db.cpp; \
        then mv -f ".deps/zm_db.Tpo" ".deps/zm_db.Po"; else rm -f ".deps/zm_db.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_config.o -MD -MP -MF ".deps/zm_config.Tpo" -c -o zm_config.o zm_config.cpp; \
        then mv -f ".deps/zm_config.Tpo" ".deps/zm_config.Po"; else rm -f ".deps/zm_config.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_coord.o -MD -MP -MF ".deps/zm_coord.Tpo" -c -o zm_coord.o zm_coord.cpp; \
        then mv -f ".deps/zm_coord.Tpo" ".deps/zm_coord.Po"; else rm -f ".deps/zm_coord.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_box.o -MD -MP -MF ".deps/zm_box.Tpo" -c -o zm_box.o zm_box.cpp; \
        then mv -f ".deps/zm_box.Tpo" ".deps/zm_box.Po"; else rm -f ".deps/zm_box.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_poly.o -MD -MP -MF ".deps/zm_poly.Tpo" -c -o zm_poly.o zm_poly.cpp; \
        then mv -f ".deps/zm_poly.Tpo" ".deps/zm_poly.Po"; else rm -f ".deps/zm_poly.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_image.o -MD -MP -MF ".deps/zm_image.Tpo" -c -o zm_image.o zm_image.cpp; \
        then mv -f ".deps/zm_image.Tpo" ".deps/zm_image.Po"; else rm -f ".deps/zm_image.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_event.o -MD -MP -MF ".deps/zm_event.Tpo" -c -o zm_event.o zm_event.cpp; \
        then mv -f ".deps/zm_event.Tpo" ".deps/zm_event.Po"; else rm -f ".deps/zm_event.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_zone.o -MD -MP -MF ".deps/zm_zone.Tpo" -c -o zm_zone.o zm_zone.cpp; \
        then mv -f ".deps/zm_zone.Tpo" ".deps/zm_zone.Po"; else rm -f ".deps/zm_zone.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_camera.o -MD -MP -MF ".deps/zm_camera.Tpo" -c -o zm_camera.o zm_camera.cpp; \
        then mv -f ".deps/zm_camera.Tpo" ".deps/zm_camera.Po"; else rm -f ".deps/zm_camera.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_local_camera.o -MD -MP -MF ".deps/zm_local_camera.Tpo" -c -o zm_local_camera.o zm_local_camera.cpp; \
        then mv -f ".deps/zm_local_camera.Tpo" ".deps/zm_local_camera.Po"; else rm -f ".deps/zm_local_camera.Tpo"; exit 1; fiif g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_remote_camera.o -MD -MP -MF ".deps/zm_remote_camera.Tpo" -c -o zm_remote_camera.o zm_remote_camera.cpp; \
        then mv -f ".deps/zm_remote_camera.Tpo" ".deps/zm_remote_camera.Po"; else rm -f ".deps/zm_remote_camera.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_file_camera.o -MD -MP -MF ".deps/zm_file_camera.Tpo" -c -o zm_file_camera.o zm_file_camera.cpp; \
        then mv -f ".deps/zm_file_camera.Tpo" ".deps/zm_file_camera.Po"; else rm -f ".deps/zm_file_camera.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_monitor.o -MD -MP -MF ".deps/zm_monitor.Tpo" -c -o zm_monitor.o zm_monitor.cpp; \
        then mv -f ".deps/zm_monitor.Tpo" ".deps/zm_monitor.Po"; else rm -f ".deps/zm_monitor.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_user.o -MD -MP -MF ".deps/zm_user.Tpo" -c -o zm_user.o zm_user.cpp; \
        then mv -f ".deps/zm_user.Tpo" ".deps/zm_user.Po"; else rm -f ".deps/zm_user.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_mpeg.o -MD -MP -MF ".deps/zm_mpeg.Tpo" -c -o zm_mpeg.o zm_mpeg.cpp; \
        then mv -f ".deps/zm_mpeg.Tpo" ".deps/zm_mpeg.Po"; else rm -f ".deps/zm_mpeg.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_jpeg.o -MD -MP -MF ".deps/zm_jpeg.Tpo" -c -o zm_jpeg.o zm_jpeg.c; \
        then mv -f ".deps/zm_jpeg.Tpo" ".deps/zm_jpeg.Po"; else rm -f ".deps/zm_jpeg.Tpo"; exit 1; fi
zm_jpeg.c: In function ‘zm_jpeg_error_exit’:
zm_jpeg.c:41: warning: incompatible implicit declaration of built-in function ‘exit’
zm_jpeg.c: In function ‘jpeg_mem_src’:
zm_jpeg.c:392: warning: assignment discards qualifiers from pointer target type
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_regexp.o -MD -MP -MF ".deps/zm_regexp.Tpo" -c -o zm_regexp.o zm_regexp.cpp; \
        then mv -f ".deps/zm_regexp.Tpo" ".deps/zm_regexp.Po"; else rm -f ".deps/zm_regexp.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_signal.o -MD -MP -MF ".deps/zm_signal.Tpo" -c -o zm_signal.o zm_signal.cpp; \
        then mv -f ".deps/zm_signal.Tpo" ".deps/zm_signal.Po"; else rm -f ".deps/zm_signal.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_buffer.o -MD -MP -MF ".deps/zm_buffer.Tpo" -c -o zm_buffer.o zm_buffer.cpp; \
        then mv -f ".deps/zm_buffer.Tpo" ".deps/zm_buffer.Po"; else rm -f ".deps/zm_buffer.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I..  -I/usr/include -I/usr/include   -g -O2 -MT zm_debug.o -MD -MP -MF ".deps/zm_debug.Tpo" -c -o zm_debug.o zm_debug.c; \
        then mv -f ".deps/zm_debug.Tpo" ".deps/zm_debug.Po"; else rm -f ".deps/zm_debug.Tpo"; exit 1; fi
g++  -g -O2  -L/usr/lib -L/usr/lib/mysql   -o zmc  zmc.o zm.o zm_db.o zm_config.o zm_coord.o zm_box.o zm_poly.o zm_image.o zm_event.o zm_zone.o zm_camera.o zm_local_camera.o zm_remote_camera.o zm_file_camera.o zm_monitor.o zm_user.o zm_mpeg.o zm_jpeg.o zm_regexp.o zm_signal.o zm_buffer.o zm_debug.o  -lavformat -lavcodec -lavutil -lpcre -lcrypto -lmysqlclient -ldl -lz -ljpeg
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_create_handle'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_get_camera_nodes'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_dma_setup_capture'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_destroy_handle'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_start_iso_transmission'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_dma_unlisten'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_header': undefined reference to `dc1394_dma_release_camera'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_packet': undefined reference to `dc1394_dma_done_with_buffer'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_read_packet': undefined reference to `dc1394_dma_single_capture'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_close': undefined reference to `dc1394_stop_iso_transmission'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_close': undefined reference to `dc1394_dma_unlisten'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_close': undefined reference to `dc1394_dma_release_camera'
/usr/lib/libavformat.a(dc1394.o): In function `dc1394_close': undefined reference to `dc1394_destroy_handle'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_header': undefined reference to `ogg_stream_init'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_header': undefined reference to `ogg_stream_packetin'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_packet': undefined reference to `ogg_stream_packetin'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_packet': undefined reference to `ogg_stream_pageout'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_packet': undefined reference to `ogg_stream_flush'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_trailer': undefined reference to `ogg_stream_flush'
/usr/lib/libavformat.a(ogg.o): In function `ogg_write_trailer': undefined reference to `ogg_stream_clear'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_init': undefined reference to `dts_init'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_frame'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_blocks_num'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_block'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_samples'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_blocks_num'
/usr/lib/libavcodec.a(dtsdec.o): In function `dts_decode_frame': undefined reference to `dts_syncinfo'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_info_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_encode_init_vbr'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_analysis_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_block_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_comment_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_comment_add_tag'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_analysis_headerout'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_comment_clear'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_init': undefined reference to `vorbis_encode_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_analysis_buffer'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_analysis_wrote'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_analysis_blockout'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_analysis'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_bitrate_addblock'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_bitrate_flushpacket'/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_bitrate_flushpacket'/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_frame': undefined reference to `vorbis_analysis_blockout'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_close': undefined reference to `vorbis_analysis_wrote'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_close': undefined reference to `vorbis_block_clear'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_close': undefined reference to `vorbis_dsp_clear'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_encode_close': undefined reference to `vorbis_info_clear'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_init': undefined reference to `vorbis_info_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_init': undefined reference to `vorbis_comment_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_init': undefined reference to `vorbis_synthesis_headerin'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_init': undefined reference to `vorbis_synthesis_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_init': undefined reference to `vorbis_block_init'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_frame': undefined reference to `vorbis_synthesis'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_frame': undefined reference to `vorbis_synthesis_pcmout'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_frame': undefined reference to `vorbis_synthesis_read'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_frame': undefined reference to `vorbis_synthesis_pcmout'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_frame': undefined reference to `vorbis_synthesis_blockin'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_close': undefined reference to `vorbis_info_clear'
/usr/lib/libavcodec.a(oggvorbis.o): In function `oggvorbis_decode_close': undefined reference to `vorbis_comment_clear'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_frame': undefined reference to `theora_decode_packetin'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_frame': undefined reference to `theora_decode_YUVout'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_end': undefined reference to `theora_info_clear'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_end': undefined reference to `theora_comment_clear'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_init': undefined reference to `theora_info_init'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_init': undefined reference to `theora_decode_header'
/usr/lib/libavcodec.a(oggtheora.o): In function `Theora_decode_init': undefined reference to `theora_decode_init'
/usr/lib/libavcodec.a(libgsm.o): In function `libgsm_init': undefined reference to `gsm_create'
/usr/lib/libavcodec.a(libgsm.o): In function `libgsm_close': undefined reference to `gsm_destroy'
/usr/lib/libavcodec.a(libgsm.o): In function `libgsm_encode_frame': undefined reference to `gsm_encode'
/usr/lib/libavcodec.a(libgsm.o): In function `libgsm_decode_frame': undefined reference to `gsm_decode'
collect2: ld returned 1 exit status
make[1]: *** [zmc] Error 1
make[1]: Leaving directory `/home/john/Desktop/ZoneMinder-1.22.2/src'
make: *** [install-recursive] Error 1
root@silverstone:/home/john/Desktop/ZoneMinder-1.22.2#
[/url]
User avatar
cordel
Posts: 5210
Joined: Fri Mar 05, 2004 4:47 pm
Location: /USA/Washington/Seattle

Post by cordel »

You need to make sure you have the following packages installed along with their development packages:
dc1394
ogg Vorbis/theora
dts
libgsm

Regards,
Corey
jasont.t
Posts: 10
Joined: Thu Aug 10, 2006 10:07 am

Post by jasont.t »

Sorry, I forgot to mention that I used the repositories from the " Unofficial Ubuntu 6.06 (Dapper Drake) Starter Guide" website: http://ubuntuguide.org/wiki/Dapper[/url]
User avatar
Airwolf
Posts: 44
Joined: Thu Jul 14, 2005 7:47 am
Location: UK

Post by Airwolf »

hi, having problems with the install. following your guide and get errors at the Mysql stage

any help appreciated

thanks


checking for perl module DBD::mysql... ok
checking for perl module Getopt::Long... ok
checking for perl module Time::HiRes... ok
checking for perl module Date::Manip... no
configure: error: zm requires Date::Manip
garyg@garyg-desktop:~/ZoneMinder-1.22.2$ mysql mysql < db/zm_create.sql
bash: db/zm_create.sql: No such file or directory
Last edited by Airwolf on Fri Aug 18, 2006 10:46 am, edited 1 time in total.
User avatar
cordel
Posts: 5210
Joined: Fri Mar 05, 2004 4:47 pm
Location: /USA/Washington/Seattle

Post by cordel »

Airwolf wrote: checking for pcre_compile in -lpcre... no
configure: WARNING: libpcre.a may be required for remote/network camera support

checking for perl module Date::Manip... no
configure: error: zm requires Date::Manip
garyg@garyg-desktop:~/ZoneMinder-1.22.2$ mysql mysql < db/zm_create.sql
bash: db/zm_create.sql: No such file or directory
You need to install the perl package Date::Manip (perl-DateManip) so that zm will compile.
Would also be a good idea to install pcre and pcre-devel.

Regards,
Corey
User avatar
R2D2
Posts: 170
Joined: Tue Dec 27, 2005 5:02 pm
Location: Stuttgart, Germany

Post by R2D2 »

This was my installation way. --> works fine :wink:

Add these lines in /etc/apt/source.list

#
# deb cdrom:[Ubuntu-Server 6.06 _Dapper Drake_ - Release i386 (20060531)]/ dapper main restricted

deb http://de.archive.ubuntu.com/ubuntu/ dapper main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ dapper main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ dapper-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ dapper-updates main restricted

## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://de.archive.ubuntu.com/ubuntu/ dapper universe
deb-src http://de.archive.ubuntu.com/ubuntu/ dapper universe

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu dapper-security main restricted
deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted
deb http://security.ubuntu.com/ubuntu dapper-security universe
deb-src http://security.ubuntu.com/ubuntu dapper-security universe


apt-get update

apt-get install apache2 php5 php5-mysql libapache2-mod-auth-mysql mysql-server g++ make netpbm libssl-dev libjpeg62-dev libmime-perl libwww-perl libarchive-tar-perl libdate-manip-perl libarchive-zip-perl libmime-lite-perl libdbi-perl libdbd-mysql-perl libpcre3-dev libmysqlclient12-dev libcurl3-openssl-dev libjpeg-mmx-dev liblwp-protocol-http-socketunix-perl phpmyadmin mc ffmpeg xawtv xinetd samba swat

(~ 97,5 MB)


/etc/init.d/apache2 restart

Download ZM

cd /usr/local/src
wget http://www2.zoneminder.com/downloads/Zo ... 2.2.tar.gz
tar -xvzf ZoneMinder-1.22.2.tar.gz
cd ZoneMinder-1.22.2


./configure --with-webdir=/var/www/zm --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data

mysql
mysql < db/zm_create.sql

mysql mysql

mysql> GRANT ALL PRIVILEGES ON zm.* TO 'zmuser'@localhost identified by 'zmpass';

mysql> quit


mysqladmin reload

make install

and finally....

connect to http://your-zm-machine/zm

Change this options

System/ZM_AUTH_RELAY - none


Cambozola

cd /usr/local/src
apt-get install ant
wget http://www.charliemouse.com/code/camboz ... est.tar.gz
tar xvfz cambozola-latest.tar.gz
cp /usr/local/src/cambozola-0.68/dist/cambozola.jar /var/www/zm
chmod 775 /var/www/zm/cambozola.jar

Then under the tools or Images tab (depending on the version) enable ZM_OPT_CAMBOZOLA
User avatar
Airwolf
Posts: 44
Joined: Thu Jul 14, 2005 7:47 am
Location: UK

Post by Airwolf »

thanks for your help but i am getting errors on make install

make[2]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/src'
test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin"
/usr/bin/install -c 'zmc' '/usr/local/bin/zmc'
/usr/bin/install: cannot create regular file `/usr/local/bin/zmc': Permission denied
make[2]: *** [install-binPROGRAMS] Error 1
make[2]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/src'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/src'
make: *** [install-recursive] Error 1
zmuser@garyg-desktop:~/ZoneMinder-1.22.2$

thanks - Gary
Joel Mezzanotte
Posts: 6
Joined: Sat Aug 19, 2006 9:57 pm

Post by Joel Mezzanotte »

Looks like you dont have permission to the directories its trying to install to. Make sure you run "sudo make install" and enter your users password.
User avatar
Airwolf
Posts: 44
Joined: Thu Jul 14, 2005 7:47 am
Location: UK

Post by Airwolf »

thanks Joel

here is my output in full. As you can see i did the SUDO Make install

zmuser@garyg-desktop:~/ZoneMinder-1.22.2$ sudo make install
Making install in src
make[1]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/src'
make[2]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/src'
test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin"
/usr/bin/install -c 'zmc' '/usr/local/bin/zmc'
/usr/bin/install -c 'zma' '/usr/local/bin/zma'
/usr/bin/install -c 'zmu' '/usr/local/bin/zmu'
/usr/bin/install -c 'zms' '/usr/local/bin/zms'
/usr/bin/install -c 'zmf' '/usr/local/bin/zmf'
/usr/bin/install -c 'zmfix' '/usr/local/bin/zmfix'
make install-exec-hook
make[3]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/src'
( cd /usr/local/bin; mkdir -p /usr/lib/cgi-bin; mv zms /usr/lib/cgi-bin )
( cd /usr/lib/cgi-bin; chown www-data:www-data zms; ln -f zms nph-zms )
( cd /usr/local/bin; chmod u+s zmfix )
make[3]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/src'
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/src'
make[1]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/src'
Making install in web
make[1]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/web'
Making install in graphics
make[2]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/web/graphics'
make[3]: Entering directory `/home/zmuser/ZoneMinder-1.22.2/web/graphics'
make[3]: Nothing to be done for `install-exec-am'.
test -z "/var/www/zm/graphics" || mkdir -p -- "/var/www/zm/graphics"
mkdir: `/var/www/zm/graphics': Not a directory
make[3]: *** [install-webDATA] Error 1
make[3]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/web/graphics'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/web/graphics'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/home/zmuser/ZoneMinder-1.22.2/web'
make: *** [install-recursive] Error 1
User avatar
zoneminder
Site Admin
Posts: 5215
Joined: Wed Jul 09, 2003 2:07 pm
Location: Bristol, UK
Contact:

Post by zoneminder »

Check that /var/www/zm/graphics does not already exist as a normal file,

Code: Select all

ls -ld /var/www/zm/graphics
Phil
Locked