after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder fails

Forum for questions and support relating to the 1.25.x releases only.
Locked
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder fails

Post by marcschh »

Hi,

zoneminder 1.25.0 works like a charme on 10.04. But after upgrading to 12.04
I got some problems:

the first was because of the perl upgrade from 5.10.1 to 5.14.2
in

both folder:
/usr/local/share/perl/5.14.2
/usr/local/lib/perl/5.14.2
were pointed in @INC, but not existing in the filesystem, so I had to link bot to the correct path:

Code: Select all

ln -s /usr/local/lib/perl/5.10.1 /usr/local/lib/perl/5.14.2
ln -s /usr/local/share/perl/5.10.1 /usr/local/share/perl/5.14.2
tried to start zoneminder:

Code: Select all

Starting ZoneMinder: /usr/bin/perl: symbol lookup error: /usr/local/lib/perl/5.14.2/auto/DBI/DBI.so: undefined symbol: Perl_Istack_sp_ptr
failure
-
but when I now try to recompile:
configure: error: zm requires DBI


#
tried to remove/reinstall with dpkg, doesn help

tried with

Code: Select all

perl -MCPAN -e shell
install DBI

Code: Select all

/usr/bin/perl: symbol lookup error: /usr/local/lib/perl/5.14.2/auto/DBI/DBI.so: undefined symbol: Perl_Istack_sp_ptr
Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site]
  TIMB/DBI-1.620.tar.gz
  /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites
Failed during this command:
 TIMB/DBI-1.620.tar.gz                        : writemakefile NO '/usr/bin/perl Makefile.PL INSTALLDIRS=site' returned status 32512
Anyone any Idea?

Would like to use Zoneminder again.

Thanks
Marc
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by marcschh »

some corrections could I make with the following:

Code: Select all

 
sudo ln -s /usr/lib/perl5 /usr/local/lib/perl/5.10.1
sudo ln -s /usr/share/perl5 /usr/local/share/perl/5.10.1
so because in the old paths were zoneminder installed, now I gave to reinstall 1.25.:

configure works now:

Code: Select all

 CXXFLAGS=-D__STDC_CONSTANT_MACROS ZM_SSL_LIB=openssl ./configure --with-webdir=/usr/share/zoneminder --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data --with-ffmpeg=/usr/bin/ ZM_DB_PASS=zmuserpass --enable-mmap=yes ZM_DB_HOST=localhost ZM_DB_NAME=zm --with-libarch=/usr/lib
But make fails with:

Code: Select all

zm_ffmpeg_camera.cpp: In Destruktor »virtual FfmpegCamera::~FfmpegCamera()«:
zm_ffmpeg_camera.cpp:61:9: Warnung: »void av_close_input_file(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:61:45: Warnung: »void av_close_input_file(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp: In Elementfunktion »virtual int FfmpegCamera::PrimeCapture()«:
zm_ffmpeg_camera.cpp:94:10: Warnung: »int av_open_input_file(AVFormatContext**, const char*, AVInputFormat*, int, AVFormatParameters*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1368) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:94:76: Warnung: »int av_open_input_file(AVFormatContext**, const char*, AVInputFormat*, int, AVFormatParameters*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1368) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:98:10: Warnung: »int av_find_stream_info(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:98:46: Warnung: »int av_find_stream_info(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:125:10: Warnung: »int avcodec_open(AVCodecContext*, AVCodec*)« ist veraltet (deklariert bei /usr/include/libavcodec/avcodec.h:4035) [-Wdeprecated-declarations]
zm_ffmpeg_camera.cpp:125:46: Warnung: »int avcodec_open(AVCodecContext*, AVCodec*)« ist veraltet (deklariert bei /usr/include/libavcodec/avcodec.h:4035) [-Wdeprecated-declarations]
mv -f .deps/zm_ffmpeg_camera.Tpo .deps/zm_ffmpeg_camera.Po
g++ -DHAVE_CONFIG_H -I. -I..  -I/usr/include -I/usr/bin//include -Wall -Wno-sign-compare -fno-inline -I/usr/bin//include   -D__STDC_CONSTANT_MACROS -MT zm_image.o -MD -MP -MF .deps/zm_image.Tpo -c -o zm_image.o zm_image.cpp
zm_image.cpp: In Elementfunktion »void Image::Blend(const Image&, int) const«:
zm_image.cpp:777:44: Warnung: Operation auf »pdest« könnte undefiniert sein [-Wsequence-point]
mv -f .deps/zm_image.Tpo .deps/zm_image.Po
g++ -DHAVE_CONFIG_H -I. -I..  -I/usr/include -I/usr/bin//include -Wall -Wno-sign-compare -fno-inline -I/usr/bin//include   -D__STDC_CONSTANT_MACROS -MT zm_local_camera.o -MD -MP -MF .deps/zm_local_camera.Tpo -c -o zm_local_camera.o zm_local_camera.cpp
mv -f .deps/zm_local_camera.Tpo .deps/zm_local_camera.Po
g++ -DHAVE_CONFIG_H -I. -I..  -I/usr/include -I/usr/bin//include -Wall -Wno-sign-compare -fno-inline -I/usr/bin//include   -D__STDC_CONSTANT_MACROS -MT zm_monitor.o -MD -MP -MF .deps/zm_monitor.Tpo -c -o zm_monitor.o zm_monitor.cpp
zm_monitor.cpp: In Elementfunktion »virtual void MonitorStream::runStream()«:
zm_monitor.cpp:3479:14: Warnung: Variable »frame_sent« gesetzt, aber nicht verwendet [-Wunused-but-set-variable]
mv -f .deps/zm_monitor.Tpo .deps/zm_monitor.Po
g++ -DHAVE_CONFIG_H -I. -I..  -I/usr/include -I/usr/bin//include -Wall -Wno-sign-compare -fno-inline -I/usr/bin//include   -D__STDC_CONSTANT_MACROS -MT zm_mpeg.o -MD -MP -MF .deps/zm_mpeg.Tpo -c -o zm_mpeg.o zm_mpeg.cpp
zm_mpeg.cpp: In Elementfunktion »void VideoStream::SetupCodec(int, int, int, int, double)«:
zm_mpeg.cpp:80:9: Warnung: »AVStream* av_new_stream(AVFormatContext*, int)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1604) [-Wdeprecated-declarations]
zm_mpeg.cpp:80:29: Warnung: »AVStream* av_new_stream(AVFormatContext*, int)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1604) [-Wdeprecated-declarations]
zm_mpeg.cpp: In Elementfunktion »void VideoStream::SetParameters()«:
zm_mpeg.cpp:133:7: Warnung: »int av_set_parameters(AVFormatContext*, AVFormatParameters*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1640) [-Wdeprecated-declarations]
zm_mpeg.cpp:133:34: Warnung: »int av_set_parameters(AVFormatContext*, AVFormatParameters*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1640) [-Wdeprecated-declarations]
zm_mpeg.cpp: In Elementfunktion »void VideoStream::OpenStream()«:
zm_mpeg.cpp:179:8: Warnung: »int avcodec_open(AVCodecContext*, AVCodec*)« ist veraltet (deklariert bei /usr/include/libavcodec/avcodec.h:4035) [-Wdeprecated-declarations]
zm_mpeg.cpp:179:29: Warnung: »int avcodec_open(AVCodecContext*, AVCodec*)« ist veraltet (deklariert bei /usr/include/libavcodec/avcodec.h:4035) [-Wdeprecated-declarations]
zm_mpeg.cpp:244:2: Warnung: »int av_write_header(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1676) [-Wdeprecated-declarations]
zm_mpeg.cpp:244:21: Warnung: »int av_write_header(AVFormatContext*)« ist veraltet (deklariert bei /usr/include/libavformat/avformat.h:1676) [-Wdeprecated-declarations]
zm_mpeg.cpp: In Elementfunktion »double VideoStream::EncodeFrame(uint8_t*, int, bool, unsigned int)«:
zm_mpeg.cpp:386:77: Fehler: »av_rescale_q« wurde in diesem Gültigkeitsbereich nicht definiert
make[2]: *** [zm_mpeg.o] Fehler 1
make[2]: Verlasse Verzeichnis '/home/msc/ZoneMinder-1.25.0/src'
make[1]: *** [all-recursive] Fehler 1
make[1]: Verlasse Verzeichnis '/home/msc/ZoneMinder-1.25.0'
make: *** [all] Fehler 2
I don understand this problem
because, libavformat-dev libswscale-dev are already installed.

Code: Select all

 ls -al /usr/include/libavformat/
insgesamt 132
drwxr-xr-x  2 root root  4096 Apr 27 22:08 .
drwxr-xr-x 46 root root 20480 Mai  1 12:09 ..
-rw-r--r--  1 root root 72161 Mär 22 06:30 avformat.h
-rw-r--r--  1 root root 26883 Mär 22 06:30 avio.h
-rw-r--r--  1 root root  4438 Mär 22 06:30 version.h
I think it could because of this, but it seems to be solved:
https://github.com/idiap/bob/issues/23

and here:
ffmpeg --version
ffmpeg version 0.8.1-4:0.8.1-0ubuntu1, Copyright (c) 2000-2011 the Libav developers
built on Mar 22 2012 05:29:10 with gcc 4.6.3

--
I tried recompile without ffmpeg and make -> but the same error persist
PacoLM
Posts: 971
Joined: Wed Dec 02, 2009 9:55 pm
Location: Spain

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by PacoLM »

Try to install the 1.25 package from this site:

http://ftp.debian.org/debian/pool/main/z/zoneminder/

Use the file you need and the follow this steps according to your computer architecture, of course):

http://www.zoneminder.com/forums/viewto ... 29&t=19118

Hope it helps!

After more than 15 years, no longer using ZM as surveillance system.
Now in the dark side, using a commercial system...
bb99
Posts: 943
Joined: Wed Apr 02, 2008 12:04 am

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by bb99 »

As a warning: updating the basic OS can break ZM! I was bit by PHP....
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by marcschh »

using the .deb is not an option. But i have tested and it is failed.

Today evening I will try using the zoneminderpackage from ubuntu repository.

But it would be interesting if anybody has zoneminder compiled under ubuntu 12.04 without problems...
river100
Posts: 145
Joined: Sun Oct 07, 2007 5:52 pm
Location: Louisiana

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by river100 »

I didn't compile it from source but i haven't had any problems with 1.25.0 that came from the repositories for 12.04 64 bit LTS server, works well. all i did is secure apache2 a little.
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by marcschh »

Hi river,

thanks for your comment. That would be good news.

But I got:

Code: Select all

zoneminder (1.25.0-1) wird eingerichtet ...
Starting ZoneMinder: zmfix: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
failure

invoke-rc.d: initscript zoneminder, action "start" failed.
can you pls do an

Code: Select all

dpkg -l | grep libmysqlclient
and tell me what you get?
I get

Code: Select all

ii  libmysqlclient-dev                            5.5.22-0ubuntu1                                 MySQL database development files
rc  libmysqlclient16                              5.1.62-0ubuntu0.10.04.1                         MySQL database client library
ii  libmysqlclient18                              5.5.22-0ubuntu1                                 MySQL database client library
I think, the problem is that in any config from 10.04+zoneminder is an reference to libmysqlclient16 but libmysqlclient18 is installed and I cannot install the old one.



IF Anyone has an idea where the libmysqlclient16 is referenced and how I can change it to the new one "libmysqlclient18"
so that I can start zoneminder without issues.

Thanks and Kind Regards
Marc
river100
Posts: 145
Joined: Sun Oct 07, 2007 5:52 pm
Location: Louisiana

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by river100 »

i only get this

ii libmysqlclient18 5.5.22-0ubuntu1 MySQL database client library


i did my install from a fresh copy of ubuntu server. while installing the OS i picked LAMP server
then did the zoneminder package file from repos

hope this helps
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by marcschh »

:-(

Code: Select all

ls -al /usr/lib/i386-linux-gnu/ |grep libmysqlcli
-rw-r--r--   1 root root  4292852 Mär 30 03:42 libmysqlclient.a
lrwxrwxrwx   1 root root       16 Mär 30 03:42 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx   1 root root       17 Mär 30 03:42 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx   1 root root       20 Mär 30 03:42 libmysqlclient_r.so.18 -> libmysqlclient.so.18
lrwxrwxrwx   1 root root       24 Mär 30 03:42 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so.18.0.0
lrwxrwxrwx   1 root root       20 Mär 30 03:42 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx   1 root root       24 Mär 30 03:42 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
-rw-r--r--   1 root root  3233048 Mär 30 03:42 libmysqlclient.so.18.0.0
I created links from libmysqlclient.so.16 to the old libmysqlclient.18 to prevent from this:

Code: Select all

zmu -d /dev/video0 -q -v
zmu: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
But when I link them , I get this:

Code: Select all

zmu -d /dev/video0 -q
zmu: /usr/lib/libmysqlclient.so.16: no version information available (required by zmu)
so where does the old one libmysqlclient.so.16 comes from?? database is dropped and I have a new one.
old libmysqlclient.16 is purged:

Code: Select all

dpkg -l | grep libmysqlcl
ii  libmysqlclient-dev                            5.5.22-0ubuntu1                                 MySQL database development files
ii  libmysqlclient18                              5.5.22-0ubuntu1                                 MySQL database client library

Code: Select all

ldd /usr/bin/zmu
	linux-gate.so.1 =>  (0xb77b6000)
	libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb7789000)
	libswscale.so.2 => /usr/lib/i386-linux-gnu/i686/cmov/libswscale.so.2 (0xb773b000)
	libavformat.so.53 => /usr/lib/i386-linux-gnu/i686/cmov/libavformat.so.53 (0xb7628000)
	libavcodec.so.53 => /usr/lib/i386-linux-gnu/i686/cmov/libavcodec.so.53 (0xb69c5000)
	libavutil.so.51 => /usr/lib/i386-linux-gnu/i686/cmov/libavutil.so.51 (0xb69a3000)
	libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xb6967000)
	libgnutls-openssl.so.27 => /usr/lib/i386-linux-gnu/libgnutls-openssl.so.27 (0xb695b000)
	libgcrypt.so.11 => /lib/i386-linux-gnu/libgcrypt.so.11 (0xb68d5000)
	libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb68ba000)
	libjpeg.so.8 => /usr/lib/i386-linux-gnu/libjpeg.so.8 (0xb6864000)
	libmysqlclient.so.18 => /usr/lib/i386-linux-gnu/libmysqlclient.so.18 (0xb654b000)
	libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb6466000)
	libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb6439000)
	libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb641b000)
	libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb6276000)
	librtmp.so.0 => /usr/lib/i386-linux-gnu/librtmp.so.0 (0xb625c000)
	libbz2.so.1.0 => /lib/i386-linux-gnu/libbz2.so.1.0 (0xb624b000)
	libxvidcore.so.4 => /usr/lib/i386-linux-gnu/libxvidcore.so.4 (0xb610d000)
	libx264.so.120 => /usr/lib/i386-linux-gnu/i686/sse2/libx264.so.120 (0xb5f70000)
	libvpx.so.1 => /usr/lib/libvpx.so.1 (0xb5ec8000)
	libvorbisenc.so.2 => /usr/lib/i386-linux-gnu/libvorbisenc.so.2 (0xb5d50000)
	libvorbis.so.0 => /usr/lib/i386-linux-gnu/libvorbis.so.0 (0xb5d25000)
	libvo-amrwbenc.so.0 => /usr/lib/i386-linux-gnu/libvo-amrwbenc.so.0 (0xb5d07000)
	libvo-aacenc.so.0 => /usr/lib/i386-linux-gnu/libvo-aacenc.so.0 (0xb5ce7000)
	libtheoraenc.so.1 => /usr/lib/i386-linux-gnu/libtheoraenc.so.1 (0xb5ca6000)
	libtheoradec.so.1 => /usr/lib/i386-linux-gnu/libtheoradec.so.1 (0xb5c89000)
	libspeex.so.1 => /usr/lib/i386-linux-gnu/sse2/libspeex.so.1 (0xb5c68000)
	libschroedinger-1.0.so.0 => /usr/lib/libschroedinger-1.0.so.0 (0xb5ba9000)
	libopenjpeg.so.2 => /usr/lib/libopenjpeg.so.2 (0xb5b8a000)
	libopencore-amrwb.so.0 => /usr/lib/libopencore-amrwb.so.0 (0xb5b70000)
	libopencore-amrnb.so.0 => /usr/lib/libopencore-amrnb.so.0 (0xb5b3d000)
	libmp3lame.so.0 => /usr/lib/i386-linux-gnu/libmp3lame.so.0 (0xb5aba000)
	libgsm.so.1 => /usr/lib/libgsm.so.1 (0xb5aab000)
	libfaac.so.0 => /usr/lib/libfaac.so.0 (0xb5a99000)
	libdirac_encoder.so.0 => /usr/lib/libdirac_encoder.so.0 (0xb5a11000)
	libva.so.1 => /usr/lib/i386-linux-gnu/libva.so.1 (0xb59fb000)
	libtasn1.so.3 => /usr/lib/i386-linux-gnu/libtasn1.so.3 (0xb59e9000)
	libgnutls.so.26 => /usr/lib/i386-linux-gnu/libgnutls.so.26 (0xb5924000)
	libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xb591f000)
	/lib/ld-linux.so.2 (0xb77b7000)
	libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb591a000)
	libogg.so.0 => /usr/lib/i386-linux-gnu/libogg.so.0 (0xb5912000)
	liborc-0.4.so.0 => /usr/lib/i386-linux-gnu/liborc-0.4.so.0 (0xb5881000)
	libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xb586f000)
JonMoore
Posts: 26
Joined: Wed May 26, 2010 5:55 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by JonMoore »

I'm having the same problem...

Upgraded ubuntu 11.10 to 12.04... can see the zoneminder console but zm won't start.

Try to recompile and reinstall and ./configure works ok but make complains about av_rescale_q and lots of warnings about avformat.

Did anyone find a solution to this? I don't really want to start fresh.

Thanks,
Jon
Jim March
Posts: 88
Joined: Thu Oct 04, 2007 8:31 am

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by Jim March »

I was in the same place. But there's a fairly easy fix.

First, install Zoneminder through the standard 12.04 repos - they have 1.25 in there. Standard "Ubuntu Software Center" actually works.

Second, do this:

Make sure apache2 is installed prior to installing ZM
Then install zoneminder and then run the following commands and your done.

sudo ln -s /etc/zm/apache.conf /etc/apache2/conf.d/zoneminder.conf
sudo /etc/init.d/apache2 force-reload
sudo service zoneminder stop
sudo service zoneminder start

This is copied from the Ubuntu Software Center reviews on Zoneminder, believe it or not, posted by "vektsilver".

This will pick up the config stuff you did in the previously installed copy and doesn't seem to care that you had the compiled stuff in there before.
marcschh
Posts: 16
Joined: Mon Jul 11, 2011 8:48 pm

Re: after upgrade ubuntuserver 10.04 -> 12.04 - zoneminder f

Post by marcschh »

thank you very much. now it is working for me also.
But if I try tu use zmu, zmfix etc. like before I get the same error with libmysqlclient16.so

don´t understand this, but happy that it works now :-)
Locked