Results 1 to 2 of 2

Thread: dv4l won't compile

  1. #1
    Join Date
    Jul 2005
    Beans
    31
    Distro
    Ubuntu 12.04 Precise Pangolin

    Question dv4l won't compile

    Hi,

    I'm trying to get a DataVideo DAC-100 DV interface to work as a V4L device so I can get analog video into VLC to stream.

    I've got vloopback working but I can't get dv4l to compile. I've added the dev packages for all the prerequisites .configure was saying "no" to and that seems to be OK now:

    Code:
    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 ISO C89... none needed
    checking how to run the C preprocessor... gcc -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 libraw1394/raw1394.h usability... yes
    checking libraw1394/raw1394.h presence... yes
    checking for libraw1394/raw1394.h... yes
    checking libiec61883/iec61883.h usability... yes
    checking libiec61883/iec61883.h presence... yes
    checking for libiec61883/iec61883.h... yes
    checking libdv/dv.h usability... yes
    checking libdv/dv.h presence... yes
    checking for libdv/dv.h... yes
    checking sys/xattr.h usability... yes
    checking sys/xattr.h presence... yes
    checking for sys/xattr.h... yes
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating version.h
    config.status: creating config.h


    When I try to make it doesn't succeed:

    Code:
    cc -Wall -O3 -MMD    -c -o normfile.o normfile.c
    normfile.c: In function ‘normalize’:
    normfile.c:247: warning: ignoring return value of ‘getcwd’, declared with attribute warn_unused_result
    cc -Wall -O3 -MMD    -c -o palettes.o palettes.c
    cc -Wall -O3 -MMD    -c -o scale.o scale.c
    cc -Wall -O3 -MMD    -c -o util.o util.c
    cc -Wall -O3 -MMD    -c -o dv4l.o dv4l.c
    dv4l.c: In function ‘mmap_mode’:
    dv4l.c:789: warning: dereferencing type-punned pointer will break strict-aliasing rules
    dv4l.c: In function ‘simple_frame_recv’:
    dv4l.c:831: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result
    cc -lraw1394 -liec61883 -ldv -o dv4l normfile.o palettes.o scale.o util.o dv4l.o
    cc -Wall -O3 -shared -fpic -Wl,-soname,libdv4l.so \
    	-D DV4LLIBNAME=/usr/local/lib/libdv4l.so \
    	-ldl -lraw1394 -liec61883 -ldv interdv4l.c \
    	normfile.c scale.c palettes.c util.c -o libdv4l.so
    In file included from interdv4l.c:46:
    /usr/include/sys/stat.h:504: error: conflicting types for ‘stat64’
    /usr/include/sys/stat.h:230: note: previous declaration of ‘stat64’ was here
    /usr/include/sys/stat.h:511: error: conflicting types for ‘lstat64’
    /usr/include/sys/stat.h:278: note: previous declaration of ‘lstat64’ was here
    /usr/include/sys/stat.h:518: error: conflicting types for ‘fstat64’
    /usr/include/sys/stat.h:232: note: previous declaration of ‘fstat64’ was here
    /usr/include/sys/stat.h:525: error: conflicting types for ‘fstatat64’
    /usr/include/sys/stat.h:255: note: previous declaration of ‘fstatat64’ was here
    interdv4l.c:134: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c: In function ‘common_lstat64’:
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c:134: error: dereferencing pointer to incomplete type
    interdv4l.c: At top level:
    interdv4l.c:136: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c: In function ‘common___xstat64’:
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c:136: error: dereferencing pointer to incomplete type
    interdv4l.c: At top level:
    interdv4l.c:138: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c: In function ‘common___lxstat64’:
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c:138: error: dereferencing pointer to incomplete type
    interdv4l.c: At top level:
    interdv4l.c:167: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:167: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:167: error: conflicting types for ‘__xstat64’
    /usr/include/sys/stat.h:436: note: previous declaration of ‘__xstat64’ was here
    interdv4l.c: In function ‘__xstat64’:
    interdv4l.c:167: warning: passing argument 3 of ‘orig__xstat64’ from incompatible pointer type
    interdv4l.c:167: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c:167: warning: passing argument 3 of ‘common___xstat64’ from incompatible pointer type
    interdv4l.c:136: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c: At top level:
    interdv4l.c:169: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:169: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:169: error: conflicting types for ‘__lxstat64’
    /usr/include/sys/stat.h:438: note: previous declaration of ‘__lxstat64’ was here
    interdv4l.c: In function ‘__lxstat64’:
    interdv4l.c:169: warning: passing argument 3 of ‘orig__lxstat64’ from incompatible pointer type
    interdv4l.c:169: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c:169: warning: passing argument 3 of ‘common___lxstat64’ from incompatible pointer type
    interdv4l.c:138: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c: At top level:
    interdv4l.c:198: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:198: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:198: error: conflicting types for ‘lstat64’
    /usr/include/sys/stat.h:278: note: previous declaration of ‘lstat64’ was here
    interdv4l.c: In function ‘lstat64’:
    interdv4l.c:198: warning: passing argument 2 of ‘origlstat64’ from incompatible pointer type
    interdv4l.c:198: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c:198: warning: passing argument 3 of ‘common_lstat64’ from incompatible pointer type
    interdv4l.c:134: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c: At top level:
    interdv4l.c:485: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:485: warning: ‘struct stat64’ declared inside parameter list
    interdv4l.c:485: error: conflicting types for ‘__fxstat64’
    /usr/include/sys/stat.h:434: note: previous declaration of ‘__fxstat64’ was here
    interdv4l.c: In function ‘__fxstat64’:
    interdv4l.c:485: warning: passing argument 3 of ‘orig__fxstat64’ from incompatible pointer type
    interdv4l.c:485: note: expected ‘struct stat64 *’ but argument is of type ‘struct stat64 *’
    interdv4l.c:485: error: dereferencing pointer to incomplete type
    interdv4l.c:485: error: dereferencing pointer to incomplete type
    interdv4l.c:485: error: dereferencing pointer to incomplete type
    interdv4l.c: In function ‘ioctl’:
    interdv4l.c:980: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result
    normfile.c: In function ‘normalize’:
    normfile.c:247: warning: ignoring return value of ‘getcwd’, declared with attribute warn_unused_result
    make: *** [libdv4l.so] Error 1
    My C++ isn't quite strong enough to work out what's wrong here. I'd really appreciate any help you could give me in getting this working.

    My platform is Ubuntu 10.10 32-bit.

    Thanks,
    Paul.
    Last edited by dangerjunkie2002; July 13th, 2011 at 06:13 PM. Reason: Added platform info.

  2. #2
    Join Date
    Sep 2009
    Beans
    2,333

    Re: dv4l won't compile

    they have stopped using v4l it is v4l2 now

    this may help you just the package

    AmyRose
    November 24th, 2008, 08:15 PM
    In Intrepid, to fix this problem, I installed the libv4l-0 package and preload it with Skype like this:

    env LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •