Zoneminder 1.24.2 for FreeBSD 8.0-RELEASE

If you've made a patch to quick fix a bug or to add a new feature not yet in the main tree then post it here so others can try it out.
Post Reply
white_raven
Posts: 2
Joined: Fri Feb 12, 2010 7:44 am

Zoneminder 1.24.2 for FreeBSD 8.0-RELEASE

Post by white_raven »

Fixed port for FreeBSD 8.0-RELEASE

Fixes:
  • deps
    now build with default apache and mysql version
    default mysql engine changed to innodb
    on i386 and amd64 link with static libjpeg-turbo library
    from http://www.virtualgl.org/DeveloperInfo/Libjpeg
    is 4X times fastest then standart system lib
    on my Celeron 420 1.60GHz CPU load drop down
    from 95% to 12%!

    patches for stability on bugged mjpeg streaming
    cameras like my TRENDNet TV-IP201 and TV-IP110
    now may be used on TV-IP201 /goform/video2 as
    remote path instead of /goform/capture
    and on TV-IP110 /cgi/mjpg/mjpeg.cgi instead of
    /cgi/jpg/image.cgi
    fix system load show in http console
    and other small fixes
Port can be downloaded there: http://white-raven.pisem.net/zoneminder ... 8.0.tar.gz
Package for i386: http://white-raven.pisem.net/zoneminder ... 24.2_2.tbz
estranged1977
Posts: 15
Joined: Wed Feb 17, 2010 1:57 am

Post by estranged1977 »

Hi Im using freeBSD 8 64 bits, I try installing using make install but after some minutes working it says "checking if we have SIMD optimisations for cpu type... no ("amd64")" and then stops with.
"configure: error: CPU is not supported"

Any idea??
smf
Posts: 1
Joined: Wed Feb 17, 2010 5:14 am

ERROR

Post by smf »

pci card Kodicom 4400
FreeBSD8 i386

Log file:

Code: Select all

Feb 17 07:56:13 smr zmc_dtuner0[15473]: FAT [Failed to get picture attributes  VIDIOCGPICT: Inappropriate ioctl for device]
Feb 17 07:56:13 smr zmdc[1106]: ERR ['zmc -d /dev/tuner0' exited abnormally, exit status 6]
Feb 17 07:58:53 smr zmc_dtuner0[15507]: FAT [Failed to get picture attributes VIDIOCGPICT: Inappropriate ioctl for device]
Error appears on line 507 zm_local_camera.cpp
Please help to correct it.
white_raven
Posts: 2
Joined: Fri Feb 12, 2010 7:44 am

Post by white_raven »

estranged1977 wrote:Hi Im using freeBSD 8 64 bits, I try installing using make install but after some minutes working it says "checking if we have SIMD optimisations for cpu type... no ("amd64")" and then stops with.
"configure: error: CPU is not supported"

Any idea??
Please try this: http://white-raven.pisem.net/zoneminder ... 8.0.tar.gz
And tell me about result.
estranged1977
Posts: 15
Joined: Wed Feb 17, 2010 1:57 am

Post by estranged1977 »

Hi, thanks for answer, well the first error is now off but now appears this:
build jpeg-turbo library
make all-recursive
Making all in simd
gcc -E -I.. -I../simd ./jsimdcfg.inc.h | /usr/bin/grep -E "^[\;%]|^\ %" | sed 's%_cpp_protection_%%' | sed 's@% define@%define@g' > jsimdcfg.inc
make all-am
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I.. -O3 -MT jsimd_x86_64.lo -MD -MP -MF .deps/jsimd_x86_64.Tpo -c -o jsimd_x86_64.lo jsimd_x86_64.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I.. -O3 -MT jsimd_x86_64.lo -MD -MP -MF .deps/jsimd_x86_64.Tpo -c jsimd_x86_64.c -o jsimd_x86_64.o
mv -f .deps/jsimd_x86_64.Tpo .deps/jsimd_x86_64.Plo
/bin/sh ../libtool --mode=compile --tag NASM ./nasm_lt.sh nasm -felf -DELF -I. jfsseflt-64.asm -o jfsseflt-64.lo
libtool: compile: ignoring unknown tag NASM
libtool: compile: ./nasm_lt.sh nasm -felf -DELF -I. jfsseflt-64.asm -o jfsseflt-64.o
nasm -felf -DELF -I./ jfsseflt-64.asm -o jfsseflt-64.o
jfsseflt-64.asm:54: error: elf output format does not support 64-bit code
jfsseflt-64.asm:75: error: impossible combination of address sizes
jfsseflt-64.asm:77: error: impossible combination of address sizes
jfsseflt-64.asm:86: error: impossible combination of address sizes
jfsseflt-64.asm:86: error: invalid effective address
jfsseflt-64.asm:87: error: impossible combination of address sizes
jfsseflt-64.asm:87: error: invalid effective address
jfsseflt-64.asm:88: error: impossible combination of address sizes
jfsseflt-64.asm:88: error: invalid effective address
jfsseflt-64.asm:89: error: impossible combination of address sizes
jfsseflt-64.asm:89: error: invalid effective address
jfsseflt-64.asm:101: error: impossible combination of address sizes
jfsseflt-64.asm:101: error: invalid effective address
jfsseflt-64.asm:102: error: impossible combination of address sizes
jfsseflt-64.asm:102: error: invalid effective address
jfsseflt-64.asm:103: error: impossible combination of address sizes
jfsseflt-64.asm:103: error: invalid effective address
jfsseflt-64.asm:104: error: impossible combination of address sizes
jfsseflt-64.asm:104: error: invalid effective address
jfsseflt-64.asm:109: error: impossible combination of address sizes
jfsseflt-64.asm:109: error: invalid effective address
jfsseflt-64.asm:110: error: impossible combination of address sizes
jfsseflt-64.asm:110: error: invalid effective address
jfsseflt-64.asm:133: error: impossible combination of address sizes
jfsseflt-64.asm:133: error: invalid effective address
jfsseflt-64.asm:134: error: impossible combination of address sizes
jfsseflt-64.asm:134: error: invalid effective address
jfsseflt-64.asm:135: error: impossible combination of address sizes
jfsseflt-64.asm:135: error: invalid effective address
jfsseflt-64.asm:136: error: impossible combination of address sizes
jfsseflt-64.asm:136: error: invalid effective address
jfsseflt-64.asm:171: error: impossible combination of address sizes
jfsseflt-64.asm:171: error: invalid effective address
jfsseflt-64.asm:172: error: impossible combination of address sizes
jfsseflt-64.asm:172: error: invalid effective address
jfsseflt-64.asm:173: error: impossible combination of address sizes
jfsseflt-64.asm:173: error: invalid effective address
jfsseflt-64.asm:174: error: impossible combination of address sizes
jfsseflt-64.asm:174: error: invalid effective address
jfsseflt-64.asm:178: error: impossible combination of address sizes
jfsseflt-64.asm:178: error: invalid effective address
jfsseflt-64.asm:179: error: impossible combination of address sizes
jfsseflt-64.asm:179: error: invalid effective address
jfsseflt-64.asm:206: error: impossible combination of address sizes
jfsseflt-64.asm:206: error: invalid effective address
jfsseflt-64.asm:207: error: impossible combination of address sizes
jfsseflt-64.asm:207: error: invalid effective address
jfsseflt-64.asm:208: error: impossible combination of address sizes
jfsseflt-64.asm:208: error: invalid effective address
jfsseflt-64.asm:209: error: impossible combination of address sizes
jfsseflt-64.asm:209: error: invalid effective address
jfsseflt-64.asm:221: error: impossible combination of address sizes
jfsseflt-64.asm:221: error: invalid effective address
jfsseflt-64.asm:222: error: impossible combination of address sizes
jfsseflt-64.asm:222: error: invalid effective address
jfsseflt-64.asm:223: error: impossible combination of address sizes
jfsseflt-64.asm:223: error: invalid effective address
jfsseflt-64.asm:224: error: impossible combination of address sizes
jfsseflt-64.asm:224: error: invalid effective address
jfsseflt-64.asm:236: error: impossible combination of address sizes
jfsseflt-64.asm:236: error: invalid effective address
jfsseflt-64.asm:237: error: impossible combination of address sizes
jfsseflt-64.asm:237: error: invalid effective address
jfsseflt-64.asm:238: error: impossible combination of address sizes
jfsseflt-64.asm:238: error: invalid effective address
jfsseflt-64.asm:239: error: impossible combination of address sizes
jfsseflt-64.asm:239: error: invalid effective address
jfsseflt-64.asm:244: error: impossible combination of address sizes
jfsseflt-64.asm:244: error: invalid effective address
jfsseflt-64.asm:245: error: impossible combination of address sizes
jfsseflt-64.asm:245: error: invalid effective address
jfsseflt-64.asm:268: error: impossible combination of address sizes
jfsseflt-64.asm:268: error: invalid effective address
jfsseflt-64.asm:269: error: impossible combination of address sizes
jfsseflt-64.asm:269: error: invalid effective address
jfsseflt-64.asm:270: error: impossible combination of address sizes
jfsseflt-64.asm:270: error: invalid effective address
jfsseflt-64.asm:271: error: impossible combination of address sizes
jfsseflt-64.asm:271: error: invalid effective address
jfsseflt-64.asm:306: error: impossible combination of address sizes
jfsseflt-64.asm:306: error: invalid effective address
jfsseflt-64.asm:307: error: impossible combination of address sizes
jfsseflt-64.asm:307: error: invalid effective address
jfsseflt-64.asm:308: error: impossible combination of address sizes
jfsseflt-64.asm:308: error: invalid effective address
jfsseflt-64.asm:309: error: impossible combination of address sizes
jfsseflt-64.asm:309: error: invalid effective address
jfsseflt-64.asm:313: error: impossible combination of address sizes
jfsseflt-64.asm:313: error: invalid effective address
jfsseflt-64.asm:314: error: impossible combination of address sizes
jfsseflt-64.asm:314: error: invalid effective address
jfsseflt-64.asm:341: error: impossible combination of address sizes
jfsseflt-64.asm:341: error: invalid effective address
jfsseflt-64.asm:342: error: impossible combination of address sizes
jfsseflt-64.asm:342: error: invalid effective address
jfsseflt-64.asm:343: error: impossible combination of address sizes
jfsseflt-64.asm:343: error: invalid effective address
jfsseflt-64.asm:344: error: impossible combination of address sizes
jfsseflt-64.asm:344: error: invalid effective address
*** Error code 1

Stop in /usr/home/boss/zm/zoneminder/work/libjpeg-turbo/simd.
*** Error code 1

Stop in /usr/home/boss/zm/zoneminder/work/libjpeg-turbo/simd.
*** Error code 1

Stop in /usr/home/boss/zm/zoneminder/work/libjpeg-turbo.
*** Error code 1

Stop in /usr/home/boss/zm/zoneminder/work/libjpeg-turbo.
*** Error code 1

Stop in /usr/home/boss/zm/zoneminder.


Maybe im doing something wrong?? I just did "make install", is that Ok right??
passat
Posts: 9
Joined: Mon Jun 18, 2007 10:05 am

The same error

Post by passat »

The same error
kelley
Posts: 1
Joined: Mon Apr 05, 2010 12:45 pm

The problem is ELF64

Post by kelley »

Code: Select all

freebsd* | netbsd* | openbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      objfmt='BSD-a.out'
    else
      objfmt='ELF'
    fi
  ;;
There is no check for 64-bit with Freebsd in libjpeg-turbo. It should be something more like the following, for FreeBSD at least .. not sure about 64bit OpenBSD or NetBSD

Code: Select all

freebsd* | netbsd* | openbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      objfmt='BSD-a.out'
    else
      case "$host_cpu" in
        amd64)
          objfmt='ELF64'  
          ;;
        *)
          objfmt='ELF'
          ;;
      esac
    fi
  ;;
Then you just need to

Code: Select all

autoreconf --force
and

Code: Select all

libtoolize --force
then it builds just fine.

On a semi-related note, why has this port not been submitted to FreeBSD for inclusion into the ports collection?
bytestore
Posts: 1
Joined: Thu Apr 08, 2010 2:32 pm

Post by bytestore »

i install this port on my freebsd 8 :)
its work, but this port have bugs on my server or cameras

1 download acinclude.m4 from 167 svn
http://libjpeg-turbo.svn.sourceforge.ne ... athrev=167

edit this file

Code: Select all

  freebsd* | netbsd* | openbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      objfmt='BSD-a.out'
    else
      case "$host_cpu" in
        x86_64)
          objfmt='ELF64'
          ;;
        *)
          objfmt='ELF'
          ;;
      esac
    fi
  ;;
on

Code: Select all

  freebsd* | netbsd* | openbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      objfmt='BSD-a.out'
    else
      case "$host_cpu" in
        amd64)
          objfmt='ELF64'
          ;;
        *)
          objfmt='ELF'
          ;;
      esac
    fi
  ;;
and place this file into /files

2 edit Makefile

Code: Select all

pre-configure:
@${ECHO_CMD} configure jpeg-turbo library
#@cd ${WRKDIR} && ${LOCALBASE}/bin/svn co --non-interactive --trust-server-cert https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo/trunk
@cd ${WRKDIR}/libjpeg-turbo && ${AUTORECONF} -fiv && ./configure CFLAGS='-O3' CXXFLAGS='-O3' --enable-static=yes --enable-shared=no
on

Code: Select all

pre-configure:
@${ECHO_CMD} configure jpeg-turbo library
#@cd ${WRKDIR} && ${LOCALBASE}/bin/svn co --non-interactive --trust-server-cert https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo/trunk
@cd ${WRKDIR} && cp ../files/acinclude.m4 libjpeg-turbo
@cd ${WRKDIR}/libjpeg-turbo && ${AUTORECONF} -fiv && ./configure CFLAGS='-O3' CXXFLAGS='-O3' --enable-static=yes --enable-shared=no
and compile port

3 when port installed i run zm
add 5 DCS-900 camera (/mjpeg.cgi)
add 6 DCS-910 camera (/mjpeg.cgi)
all camera work but i see in logs this
  • Apr 8 18:46:44 video zma_m3[746]: INF [kurskaya27: 14000 - Processing at 6.21 fps]
    Apr 8 18:46:44 video zmc_m2[740]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m10[772]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m2[740]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m10[772]: WAR [Corrupt JPEG data: 2 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m8[764]: WAR [Corrupt JPEG data: 1 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m2[740]: WAR [Corrupt JPEG data: 1 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m10[772]: WAR [Corrupt JPEG data: 1 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m8[764]: WAR [Corrupt JPEG data: 1 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m8[764]: WAR [Corrupt JPEG data: 2 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m2[740]: WAR [Corrupt JPEG data: 2 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m10[772]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m2[740]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:44 video zmc_m10[772]: WAR [Corrupt JPEG data: 2 extraneous bytes before marker 0xd0]
    Apr 8 18:46:45 video zmc_m2[740]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:45 video zmc_m10[772]: WAR [Corrupt JPEG data: 3 extraneous bytes before marker 0xd0]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor degtyarnaya5_7, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor degtyarnaya5_7, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor Salova56-401, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor Salova56-401, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor kurskaya27, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor kurskaya27, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor ilich_K, expected 316, got 328]
    Apr 8 18:46:45 video zmwatch[784]: ERR [Shared data size conflict in shared_data for monitor ilich_K, expected 316, got 328]
and in apache.log
  • [Thu Apr 08 18:15:02 2010] [error] [client 192.168.253.109] socket_sendto( /tmp/zms-885860s.sock ) failed: Connection refused, referer: http://myweb
    /?view=event&eid=101&trms=1&attr1=MonitorId&op1=%3d&val1=11&page=1
    [Thu Apr 08 18:15:02 2010] [error] [client 192.168.253.109] array (\n 0 => \n array (\n 'file' => '/usr/local/www/apache22/data/zm/ajax/stream.php',\n
    'line' => 55,\n 'function' => 'ajaxError',\n 'args' => \n array (\n 0 => 'socket_sendto( /tmp/zms-885860s.sock ) failed: Connection refused',
    \n ),\n ),\n 1 => \n array (\n 'file' => '/usr/local/www/apache22/data/zm/index.php',\n 'line' => 116,\n 'args' => \n array (\n 0 => '
    /usr/local/www/apache22/data/zm/ajax/stream.php',\n ),\n 'function' => 'require_once',\n ),\n), referer: http://myweb/?view=event&eid=101&trm
    s=1&attr1=MonitorId&op1=%3d&val1=11&page=1
achix
Posts: 146
Joined: Tue Oct 02, 2007 9:38 am
Location: Greece

Re: ERROR

Post by achix »

smf wrote:pci card Kodicom 4400
FreeBSD8 i386

Log file:

Code: Select all

Feb 17 07:56:13 smr zmc_dtuner0[15473]: FAT [Failed to get picture attributes  VIDIOCGPICT: Inappropriate ioctl for device]
Feb 17 07:56:13 smr zmdc[1106]: ERR ['zmc -d /dev/tuner0' exited abnormally, exit status 6]
Feb 17 07:58:53 smr zmc_dtuner0[15507]: FAT [Failed to get picture attributes VIDIOCGPICT: Inappropriate ioctl for device]
Error appears on line 507 zm_local_camera.cpp
Please help to correct it.
apparently the port is incomplete, since it obviously contains the original linux code to handle local (non-IP) cameras (which imo are so cheap that they definitely provide a very good alternative as opposed to IP cameras, most of them nowadays contain a system like zoneminder in theirself).
One needs to rewrite the local camera code, like i did in the 1.23 port.
Now, if someone makes a complete 1.24 port, that would be great.
What would be even greater, would be, if someone actual submitted it as an official port in the multimedia port subtree.
Post Reply