Menu

compile giflib-5.1.0 on Raspberry Pi

Help
2014-12-21
2014-12-22
  • Roee Bachar

    Roee Bachar - 2014-12-21

    My steps:
    $ cd /home/pi/giflib-5.1.0
    $ ./configure --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
    $ make

    The problem make fails with:
    pi@raspberrypi ~/giflib-5.1.0 $ make
    CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /home/pi/giflib-5.1.0/missing aclocal-1.14 -I m4
    /home/pi/giflib-5.1.0/missing: line 81: aclocal-1.14: command not found
    WARNING: 'aclocal-1.14' is missing on your system.
    ---------------You should only need it if you modified 'acinclude.m4' or
    ---------------'configure.ac' or m4 files included by 'configure.ac'.
    ---------------The 'aclocal' program is part of the GNU Automake package:
    ---------------http://www.gnu.org/software/automake
    ---------------It also requires GNU Autoconf, GNU m4 and Perl in order to run:
    ---------------http://www.gnu.org/software/autoconf
    ---------------http://www.gnu.org/software/m4/
    ---------------http://www.perl.org/
    Makefile:577: recipe for target 'aclocal.m4' failed
    make: *** [aclocal.m4] Error 127

    It appens also if I execute only ./configure without additional parameters.

    any idea about this problem?

     
    • Eric S. Raymond

      Eric S. Raymond - 2014-12-21

      Roee Bachar mrroee@users.sf.net:

      My steps:
      $ cd /home/pi/giflib-5.1.0
      $ ./configure --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
      $ make

      The problem make fails with:
      pi@raspberrypi ~/giflib-5.1.0 $ make
      CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /home/pi/giflib-5.1.0/missing aclocal-1.14 -I m4
      /home/pi/giflib-5.1.0/missing: line 81: aclocal-1.14: command not found
      WARNING: 'aclocal-1.14' is missing on your system.
      ---------------You should only need it if you modified 'acinclude.m4' or
      ---------------'configure.ac' or m4 files included by 'configure.ac'.
      ---------------The 'aclocal' program is part of the GNU Automake package:
      ---------------http://www.gnu.org/software/automake
      ---------------It also requires GNU Autoconf, GNU m4 and Perl in order to run:
      ---------------http://www.gnu.org/software/autoconf
      ---------------http://www.gnu.org/software/m4/
      ---------------http://www.perl.org/
      Makefile:577: recipe for target 'aclocal.m4' failed
      make: *** [aclocal.m4] Error 127

      It appens also if I execute only ./configure without additional parameters.

      any idea about this problem?

      Yes. Try running autogen.sh.

          <a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
      
       
      • Roee Bachar

        Roee Bachar - 2014-12-21

        The same hapens if I run autogen.sh
        this is the output of autogen.sh and make:

        pi@raspberrypi ~/giflib-5.1.0 $ ./autogen.sh
        Warning: This script will run configure for you -- if you need to pass
        arguments to configure, please give them as arguments to this script.
        ./autogen.sh: 14: ./autogen.sh: aclocal: not found
        ./autogen.sh: 15: ./autogen.sh: autoheader: not found
        ./autogen.sh: 16: ./autogen.sh: libtoolize: not found
        ./autogen.sh: 17: ./autogen.sh: automake: not found
        ./autogen.sh: 18: ./autogen.sh: autoconf: not found
        ./autogen.sh: 19: ./autogen.sh: automake: not found
        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... no
        checking for mawk... mawk
        checking whether make sets $(MAKE)... yes
        checking whether make supports nested variables... yes
        checking whether make supports nested variables... (cached) yes
        checking build system type... armv6l-unknown-linux-gnueabihf
        checking host system type... armv6l-unknown-linux-gnueabihf
        checking how to print strings... printf
        checking for style of include used by make... GNU
        checking for gcc... gcc
        checking whether the C compiler works... yes
        checking for C compiler default output file name... a.out
        checking for suffix of executables...
        checking whether we are cross compiling... no
        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 whether gcc understands -c and -o together... yes
        checking dependency style of gcc... gcc3
        checking for a sed that does not truncate output... /bin/sed
        checking for grep that handles long lines and -e... /bin/grep
        checking for egrep... /bin/grep -E
        checking for fgrep... /bin/grep -F
        checking for ld used by gcc... /usr/bin/ld
        checking if the linker (/usr/bin/ld) is GNU ld... yes
        checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
        checking the name lister (/usr/bin/nm -B) interface... BSD nm
        checking whether ln -s works... yes
        checking the maximum length of command line arguments... 1572864
        checking whether the shell understands some XSI constructs... yes
        checking whether the shell understands "+="... yes
        checking how to convert armv6l-unknown-linux-gnueabihf file names to armv6l-unknown-linux-gnueabihf format... func_convert_file_noop
        checking how to convert armv6l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop
        checking for /usr/bin/ld option to reload object files... -r
        checking for objdump... objdump
        checking how to recognize dependent libraries... pass_all
        checking for dlltool... no
        checking how to associate runtime and link libraries... printf %s\n
        checking for ar... ar
        checking for archiver @FILE support... @
        checking for strip... strip
        checking for ranlib... ranlib
        checking command to parse /usr/bin/nm -B output from gcc object... ok
        checking for sysroot... no
        checking for mt... mt
        checking if mt is a manifest tool... no
        checking how to run the C preprocessor... gcc -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 dlfcn.h... yes
        checking for objdir... .libs
        checking if gcc supports -fno-rtti -fno-exceptions... no
        checking for gcc option to produce PIC... -fPIC -DPIC
        checking if gcc PIC flag -fPIC -DPIC works... yes
        checking if gcc static flag -static works... yes
        checking if gcc supports -c -o file.o... yes
        checking if gcc supports -c -o file.o... (cached) yes
        checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
        checking whether -lc should be explicitly linked in... no
        checking dynamic linker characteristics... GNU/Linux ld.so
        checking how to hardcode library paths into programs... immediate
        checking whether stripping libraries is possible... yes
        checking if libtool supports shared libraries... yes
        checking whether to build shared libraries... yes
        checking whether to build static libraries... yes
        checking for gcc... (cached) gcc
        checking whether we are using the GNU C compiler... (cached) yes
        checking whether gcc accepts -g... (cached) yes
        checking for gcc option to accept ISO C89... (cached) none needed
        checking whether gcc understands -c and -o together... (cached) yes
        checking dependency style of gcc... (cached) gcc3
        checking how to run the C preprocessor... gcc -E
        checking whether ln -s works... yes
        checking whether make sets $(MAKE)... (cached) yes
        checking for xmlto... no
        checking limits.h usability... yes
        checking limits.h presence... yes
        checking for limits.h... yes
        checking fcntl.h usability... yes
        checking fcntl.h presence... yes
        checking for fcntl.h... yes
        checking for stdint.h... (cached) yes
        checking stdarg.h usability... yes
        checking stdarg.h presence... yes
        checking for stdarg.h... yes
        checking that generated files are newer than configure... done
        configure: creating ./config.status
        config.status: creating util/Makefile
        config.status: creating lib/Makefile
        config.status: creating Makefile
        config.status: creating doc/Makefile
        config.status: creating pic/Makefile
        config.status: creating config.h
        config.status: executing depfiles commands
        config.status: executing libtool commands
        pi@raspberrypi ~/giflib-5.1.0 $ make
        CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /home/pi/giflib-5.1.0/missing aclocal-1.14 -I m4
        /home/pi/giflib-5.1.0/missing: line 81: aclocal-1.14: command not found
        WARNING: 'aclocal-1.14' is missing on your system.
        ---------------You should only need it if you modified 'acinclude.m4' or
        ---------------'configure.ac' or m4 files included by 'configure.ac'.
        ---------------The 'aclocal' program is part of the GNU Automake package:
        ---------------http://www.gnu.org/software/automake
        ---------------It also requires GNU Autoconf, GNU m4 and Perl in order to run:
        ---------------http://www.gnu.org/software/autoconf
        ---------------http://www.gnu.org/software/m4/
        ---------------http://www.perl.org/
        Makefile:577: recipe for target 'aclocal.m4' failed
        make: *** [aclocal.m4] Error 127
        pi@raspberrypi ~/giflib-5.1.0 $

         
        • Eric S. Raymond

          Eric S. Raymond - 2014-12-21

          Roee Bachar mrroee@users.sf.net:

          The same hapens if I run autogen.sh
          this is the output of autogen.sh and make:

          pi@raspberrypi ~/giflib-5.1.0 $ ./autogen.sh
          Warning: This script will run configure for you -- if you need to pass
          arguments to configure, please give them as arguments to this script.
          ./autogen.sh: 14: ./autogen.sh: aclocal: not found
          ./autogen.sh: 15: ./autogen.sh: autoheader: not found
          ./autogen.sh: 16: ./autogen.sh: libtoolize: not found
          ./autogen.sh: 17: ./autogen.sh: automake: not found
          ./autogen.sh: 18: ./autogen.sh: autoconf: not found
          ./autogen.sh: 19: ./autogen.sh: automake: not found

          Aha. That looks like yuou don't have autotools installed.

              <a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
          
           
  • Roee Bachar

    Roee Bachar - 2014-12-21

    Thanks Eric

    I installed autoconf and libtool
    $ sudo apt-get install autoconf
    $ sudo apt-get install libtool

    not sure if autoconf is really needed because after installing it the problem remained.

    to compile static lib of giflib-5.1.0 I used:
    $ cd /home/pi/giflib-5.1.0
    $ ./autogen.sh --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
    $ make
    $ make check
    $ make install

    Best,
    Roee

     
    • Eric S. Raymond

      Eric S. Raymond - 2014-12-21

      Roee Bachar mrroee@users.sf.net:

      Thanks Eric

      I installed autoconf and libtool
      $ sudo apt-get install autoconf
      $ sudo apt-get install libtool

      not sure if autoconf is really needed because after installing it the problem remained.

      to compile static lib of giflib-5.1.0 I used:
      $ cd /home/pi/giflib-5.1.0
      $ ./autogen.sh --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
      $ make
      $ make check
      $ make install

      Best,
      Roee

      Again, try running autogen.sh now that autconf is installed. I think you
      will see a different result.
      --
      Eric S. Raymond

       
      • Roee Bachar

        Roee Bachar - 2014-12-21

        Sorry if I wasn't clear.
        I succeeded to compile the library with the following steps:
        $ cd /home/pi/giflib-5.1.0
        $ ./autogen.sh --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
        $ make
        $ make check
        $ make install

        after I installed autoconf and libtool as you suggested.

        Regards,
        Roee

         
        • Eric S. Raymond

          Eric S. Raymond - 2014-12-21

          Roee Bachar mrroee@users.sf.net:

          Sorry if I wasn't clear.
          I succeeded to compile the library with the following steps:
          $ cd /home/pi/giflib-5.1.0
          $ ./autogen.sh --prefix=/home/pi/giflib-5.1.0 --enable-static --disable-shared
          $ make
          $ make check
          $ make install

          after I installed autoconf and libtool as you suggested.

          Now I'm confused. Did it build properly?

              <a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
          
           
  • Roee Bachar

    Roee Bachar - 2014-12-22

    Yes it did!
    Thanks a lot

     

Log in to post a comment.