Problems compiling ZoneMinder 1.24

Forum for questions and support relating to the 1.24.x releases only.
Locked
ssaguiar
Posts: 2
Joined: Mon Apr 13, 2009 5:11 pm

Problems compiling ZoneMinder 1.24

Post by ssaguiar »

Hi to all.

This is my first post and I am glad to be here.

I am experimenting a problem when I try to compile the ZoneMinder I just downloaded, using my debian system.

When I run the ./configure, using this command line:

Code: Select all

./configure --with-mysql=/usr --with-webdir=/var/www/zm --with-cgidir=/var/www/cgi-bin --sysconfdir=/etc --with-ffmpeg=/usr/local --with-webuser=www-data --with-webgroup=www-data CPPFLAGS="-I /usr/local/ssl/include -I /usr/local/lib"
I get a dependency error:

Code: Select all

configure: error: zm requires libmysqlclient.a
Here are the configure messages:

Code: Select all

cefalosporina:~/zoneminder/ZoneMinder-1.24.1# ./configure --with-mysql=/usr --with-webdir=/var/www/zm --with-cgidir=/var/www/cgi-bin --sysconfdir=/etc --with-ffmpeg=/usr/local --with-webuser=www-data --with-webgroup=www-data CPPFLAGS="-I /usr/local/ssl/include -I /usr/local/lib"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
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-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> 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> 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 correctly then you should probably disable this feature.
    e.g. --enable-crashtrace=yes or --disable-crashtrace
configure: WARNING: You can call configure with the --enable-mmap=<yes> or --disable-mmap option.
    This tells configure whether to compile ZoneMinder with mmap support rather than IPC shared
    memory. This is an experimental feature that uses memory mapped into files which all processes
    can share. Memory mapping requires less configuration and is more flexible than shared memory
    but may slow down your system unless the mapped files are configured to reside on a fast or
    RAM based filesystem.
    e.g. --enable-mmap=yes or --disable-mmap
checking for g++... g++
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 g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking whether make sets $(MAKE)... (cached) yes
checking how to run the C++ preprocessor... g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/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 stdbool.h that conforms to C99... yes
checking for _Bool... no
checking for an ANSI C-conforming const... yes
checking for uid_t in sys/types.h... yes
checking for inline... inline
checking for mode_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for uint8_t... yes
checking return type of signal handlers... void
checking for siginfo_t... yes
checking for struct sigcontext... yes
checking for struct sigcontext.eip... yes
checking for ucontext_t... yes
checking whether gcc needs -traditional... no
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking whether lstat dereferences a symlink specified with a trailing slash... yes
checking whether stat accepts an empty string... no
checking for strftime... yes
checking for working strtod... yes
checking for vprintf... yes
checking for _doprnt... no
checking for gethostbyname... yes
checking for gethostname... yes
checking for gettimeofday... yes
checking for memmove... yes
checking for memset... yes
checking for mkdir... yes
checking for munmap... yes
checking for putenv... yes
checking for select... yes
checking for socket... yes
checking for sqrt... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strcspn... yes
checking for strerror... yes
checking for strncasecmp... yes
checking for strrchr... yes
checking for strsignal... yes
checking for strspn... yes
checking for strstr... yes
checking for strtol... yes
checking for strtoull... yes
checking for ffmpeg... yes
checking for ffmpeg... /usr/local/bin/ffmpeg
checking for pnmscale... yes
checking for pnmscale... /usr/bin/pnmscale
checking for jpeg_start_compress in -ljpeg... yes
checking for compress in -lz... yes
checking for dlsym in -ldl... yes
checking for pthread_create in -lpthread... yes
checking for mysql_init in -lmysqlclient... no
configure: error: zm requires libmysqlclient.a
My sources.list file is:

Code: Select all

deb http://ftp.br.debian.org/debian/ etch main
deb-src http://ftp.br.debian.org/debian/ etch main
deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib
deb http://mirrors.kernel.org/debian etch main non-free
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all
# ZoneMinder
deb http://www.spic.net/zoneminder/debian/ ./
deb-src http://www.spic.net/zoneminder/debian/ ./
I already made a apt-get upgrade.

When I try (I read that the libmysqlclient.a is part of mysql-devel):

Code: Select all

apt-get install mysql-devel
I get:

Code: Select all

Impossível achar pacote mysql-devel
This means: "Impossible to find package mysql-devel"

Any help or clues about what could be the solution?

Thanks to all.

Sergio
User avatar
cordel
Posts: 5210
Joined: Fri Mar 05, 2004 4:47 pm
Location: /USA/Washington/Seattle

Post by cordel »

You have to have mysql headers, there is no work around.

Sounds awful odd that you can not get mysql-devel or mysql-dev as it is available across all distro repos.
ssaguiar
Posts: 2
Joined: Mon Apr 13, 2009 5:11 pm

Post by ssaguiar »

cordel wrote:You have to have mysql headers, there is no work around.

Sounds awful odd that you can not get mysql-devel or mysql-dev as it is available across all distro repos.
Yes, I agree.
This is why I am pulling my hairs (the ones left!) :lol:

I will try to remove the mysql and reinstall it.

Sergio
Locked