make failed...rmd_types.h error

Help
2008-12-10
2013-06-03
  • I'm building on rhel4 and appears all the dependencies are there. Here is the configure output:

    ./configure --prefix=/home/recDesk --enable-oss=yes --enable-jack=yes
    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
    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 for style of include used by make... GNU
    checking dependency style of gcc... gcc3
    checking whether gcc and cc understand -c and -o together... yes
    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    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 whether byte ordering is bigendian... no
    checking for dirent.h that defines DIR... yes
    checking for library containing opendir... none required
    checking for ANSI C header files... (cached) yes
    checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
    checking whether -R must be followed by a space... neither works
    checking for gethostbyname... yes
    checking for connect... yes
    checking for remove... yes
    checking for shmat... yes
    checking for IceConnectionNumber in -lICE... yes
    X libraries are found in /usr/X11R6/lib
    X includes are found in /usr/X11R6/include
    checking alsa/asoundlib.h usability... no
    checking alsa/asoundlib.h presence... no
    checking for alsa/asoundlib.h... no
    checking endian.h usability... yes
    checking endian.h presence... yes
    checking for endian.h... yes
    checking sys/soundcard.h usability... yes
    checking sys/soundcard.h presence... yes
    checking for sys/soundcard.h... yes
    checking sys/time.h usability... yes
    checking sys/time.h presence... yes
    checking for sys/time.h... yes
    checking for unistd.h... (cached) yes
    checking vorbis/vorbisfile.h usability... yes
    checking vorbis/vorbisfile.h presence... yes
    checking for vorbis/vorbisfile.h... yes
    checking fcntl.h usability... yes
    checking fcntl.h presence... yes
    checking for fcntl.h... yes
    checking for u_int16_t... yes
    checking for u_int32_t... yes
    checking for u_int64_t... yes
    checking for isnan in -lm... yes
    checking for deflate in -lz... yes
    checking for IceOpenConnection in -lICE... yes
    checking for SmcOpenConnection in -lSM... yes
    checking for XOpenDisplay in -lX11... yes
    checking for XShmQueryVersion in -lXext... yes
    checking for XFixesQueryExtension in -lXfixes... yes
    checking for XDamageQueryExtension in -lXdamage... yes
    checking for vorbis_info_clear in -lvorbis... yes
    checking for ov_open in -lvorbisfile... yes
    checking for vorbis_encode_init in -lvorbisenc... yes
    checking for ogg_stream_init in -logg... yes
    checking for theora_encode_YUVin in -ltheora... yes
    checking for pthread_mutex_lock in -lpthread... yes
    checking for jack_activate in -ljack... no
    checking whether closedir returns void... no
    checking for stdlib.h... (cached) yes
    checking for GNU libc compatible malloc... yes
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating src/Makefile
    config.status: creating doc/Makefile
    config.status: creating config.h
    config.status: executing depfiles commands

    ****************************************

    Audio driver that will be used: OSS

    Compile with Jack support: Disabled

    ****************************************

    then the make output:
    make
    make  all-recursive
    make[1]: Entering directory `/home/recDesk/recordmydesktop-0.3.8'
    Making all in src
    make[2]: Entering directory `/home/recDesk/recordmydesktop-0.3.8/src'
    gcc -DHAVE_CONFIG_H -I. -I..  -D_THREAD_SAFE -pthread -Wall -I/home/recDesk/include  -I/usr/X11R6/include  -g -O2 -MT recordmydesktop-rmd.o -MD -MP -MF .deps/recordmydesktop-rmd.Tpo -c -o recordmydesktop-rmd.o `test -f 'rmd.c' || echo './'`rmd.c
    In file included from rmd.c:29:
    rmd_types.h:179: error: syntax error before "FILE"
    rmd_types.h:179: warning: no semicolon at end of struct or union
    rmd_types.h:180: warning: type defaults to `int' in declaration of `EncData'
    rmd_types.h:180: warning: data definition has no type or storage class
    rmd_types.h:203: error: syntax error before "FILE"
    rmd_types.h:203: warning: no semicolon at end of struct or union
    rmd_types.h:205: warning: type defaults to `int' in declaration of `afp'
    rmd_types.h:205: warning: data definition has no type or storage class
    rmd_types.h:207: error: syntax error before '}' token
    rmd_types.h:207: warning: type defaults to `int' in declaration of `CacheData'
    rmd_types.h:207: warning: data definition has no type or storage class
    rmd_types.h:253: error: syntax error before "EncData"
    rmd_types.h:253: warning: no semicolon at end of struct or union
    rmd_types.h:254: warning: type defaults to `int' in declaration of `cache_data'
    rmd_types.h:254: warning: data definition has no type or storage class
    rmd_types.h:338: error: syntax error before '}' token
    In file included from rmd.c:31:
    rmd_cache.h:47: error: syntax error before "FILE"
    rmd_cache.h:63: error: syntax error before "FILE"
    rmd_cache.h:72: error: syntax error before '*' token
    rmd_cache.h:85: error: syntax error before "EncData"
    In file included from rmd.c:34:
    rmd_initialize_data.h:46: error: syntax error before "EncData"
    rmd.c: In function `main':
    rmd.c:45: error: storage size of 'pdata' isn't known
    rmd.c:51: warning: implicit declaration of function `exit'
    rmd.c:57: warning: implicit declaration of function `fprintf'
    rmd.c:57: error: `stderr' undeclared (first use in this function)
    rmd.c:57: error: (Each undeclared identifier is reported only once
    rmd.c:57: error: for each function it appears in.)
    rmd.c:73: error: syntax error before "enc_data"
    rmd.c:122: error: `enc_data' undeclared (first use in this function)
    rmd.c:124: warning: implicit declaration of function `strcmp'
    rmd.c:169: warning: implicit declaration of function `remove'
    rmd.c:170: warning: implicit declaration of function `perror'
    rmd.c:45: warning: unused variable `pdata'
    make[2]: *** [recordmydesktop-rmd.o] Error 1
    make[2]: Leaving directory `/home/recDesk/recordmydesktop-0.3.8/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/recDesk/recordmydesktop-0.3.8'
    make: *** [all] Error 2

    thanks for any help!
    jim

     
    • Can you add the line:
      #include <stdio.h>
      in src/rmd_types.h somewhere near the top, preferably  line 29  and then try to recompile, please?

      John.-

       
    • Thanks! so glad I got a response and after I made that addition and the addition of including errno.h to several of the rmd header files it successfully compiled!

      I can post the header files I had to edit...adding
      #include <stdio.h>
      #include <errno.h>

      to each at the top.

      thanks again,
      jamie

       
      • >> I can post the header files I had to edit...adding
        >> #include <stdio.h>
        >> #include <errno.h>
        >>
        >> to each at the top.

        Yes, please, that would be great. Since I don't get
        this problem on my setup, I might miss something,
        like I did in the first place, so your help would
        be greatly appreciated ;-) .

        Thanks,
        John.-

         
    • I added the header includes to

      rmd_types.h
      rmd_cache.h
      rmd_cache_audio.h
      rmd_capture_sound.h
      rmd_encode_image_buffer.h
      rmd_encode_sound_buffer.h
      rmd_get_frame.h
      rmd_timer.h

       
      • Thanks :-) !