SOLVED: newbie: zoneminder will not build on centos 5

Forum for questions and support relating to the 1.25.x releases only.
Locked
neuronetv
Posts: 86
Joined: Mon Dec 17, 2012 10:01 pm

SOLVED: newbie: zoneminder will not build on centos 5

Post by neuronetv »

running centos 5.8 server, brand new net install.
I've tried to follow the instructions at http://www.zoneminder.com/wiki/index.php/CentOS but zoneminder keeps falling over when running make.
Everything goes fine up until the bit about installing ZoneMinder-1.25.0, the ./configure command works fine and I get:
Checking if your kit is complete...
Looks good
Writing Makefile for ZoneMinder

but when I run make I get:
<snip>
g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/include -I/usr/local/share/ffmpeg/include -Wall -Wno-sign-compare -fno-inline -I/usr/local/share/ffmpeg/include -D__STDC_CONSTANT_MACROS -g -O2 -MT zm_ffmpeg_camera.o -MD -MP -MF .deps/zm_ffmpeg_camera.Tpo -c -o zm_ffmpeg_camera.o zm_ffmpeg_camera.cpp
zm_ffmpeg_camera.cpp:105:44: error: missing binary operator before token "("
zm_ffmpeg_camera.h:39: error: ISO C++ forbids declaration of ‘AVFormatContext’ with no type
zm_ffmpeg_camera.h:39: error: expected ‘;’ before ‘*’ token
zm_ffmpeg_camera.h:41: error: ISO C++ forbids declaration of ‘AVCodecContext’ with no type
zm_ffmpeg_camera.h:41: error: expected ‘;’ before ‘*’ token
zm_ffmpeg_camera.h:42: error: ISO C++ forbids declaration of ‘AVCodec’ with no type
zm_ffmpeg_camera.h:42: error: expected ‘;’ before ‘*’ token
and loads more errors after that.
I can't find a solution to this anywhere. I tried all three configure commands on that page.

I also tried to install ZoneMinder-1.24.1 but on make I got:
g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/include -I/usr/local/share/ffmpeg/include -Wall -Wno-sign-compare -fno-inline -I/usr/local/share/ffmpeg/include -D__STDC_CONSTANT_MACROS -frepo -g -O2 -MT zm_ffmpeg_camera.o -MD -MP -MF .deps/zm_ffmpeg_camera.Tpo -c -o zm_ffmpeg_camera.o zm_ffmpeg_camera.cpp
zm_ffmpeg_camera.h:39: error: ISO C++ forbids declaration of ‘AVFormatContext’ with no type
zm_ffmpeg_camera.h:39: error: expected ‘;’ before ‘*’ token
zm_ffmpeg_camera.h:41: error: ISO C++ forbids declaration of ‘AVCodecContext’ with no type
zm_ffmpeg_camera.h:41: error: expected ‘;’ before ‘*’ token

etc etc...

I also tried a build on centos 6 server but the ./configure command gives:
configure: error: zm requires gnutls/openssl.h - use ZM_SSL_LIB option to select openssl instead

I'd like to persist with centos 5.8 and get it working if I can, thanks for any help.
Last edited by neuronetv on Wed Mar 20, 2013 11:35 am, edited 1 time in total.
neuronetv
Posts: 86
Joined: Mon Dec 17, 2012 10:01 pm

Re: newbie: zoneminder will not build on centos 5

Post by neuronetv »

3 months later and I still have this problem - I can't get make to work.
come on - can anyone here shed light?
PacoLM
Posts: 971
Joined: Wed Dec 02, 2009 9:55 pm
Location: Spain

Re: newbie: zoneminder will not build on centos 5

Post by PacoLM »

Try this:

cd /usr/src/zm
wget http://ab-log.ru/files/File/zm-patch.zip
unzip zm-patch.zip
patch -p1 < zm-patch.diff

Compile again, if still failing, then you may need to install another version of the ffmpeg encoder.

After more than 15 years, no longer using ZM as surveillance system.
Now in the dark side, using a commercial system...
neuronetv
Posts: 86
Joined: Mon Dec 17, 2012 10:01 pm

solved: newbie: zoneminder will not build on centos 5

Post by neuronetv »

I managed to get it to compile, the problem was ffmpeg. it seems zm 1.25 does not like versions later that 10, so I stripped out ffmpeg and installed this:
http://www.ffmpeg.org/releases/ffmpeg-0.10.4.tar.gz
and now the zoneminder install completes.
Locked