Unable to build or insufficient instructions to build #21132

issue josephkniest opened this issue on February 9, 2021
  1. josephkniest commented at 11:59 PM on February 9, 2021: none

    According to the build instructions for *nix the first step is to execute a bash script, but this fails with the following error. There are missing steps in the documentation to get a fresh ubuntu box building the exchange software. This is on OS "Ubuntu 20.04.1 LTS" with gcc version "gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0"

    root@058f87446885:/bitcoin# ./autogen.sh Makefile.am:8: error: Libtool library used but 'LIBTOOL' is undefined Makefile.am:8: The usual way to define 'LIBTOOL' is to add 'LT_INIT' Makefile.am:8: to 'configure.ac' and run 'aclocal' and 'autoconf' again. Makefile.am:8: If 'LT_INIT' is in 'configure.ac', make sure Makefile.am:8: its definition is in aclocal's search path. /usr/share/automake-1.16/am/depend2.am: error: am__fastdepCXX does not appear in AM_CONDITIONAL /usr/share/automake-1.16/am/depend2.am: The usual way to define 'am__fastdepCXX' is to add 'AC_PROG_CXX'
    /usr/share/automake-1.16/am/depend2.am: to 'configure.ac' and run 'aclocal' and 'autoconf' again /usr/share/automake-1.16/am/depend2.am: error: AMDEP does not appear in AM_CONDITIONAL /usr/share/automake-1.16/am/depend2.am: The usual way to define 'AMDEP' is to add one of the compiler tests
    /usr/share/automake-1.16/am/depend2.am: AC_PROG_CC, AC_PROG_CXX, AC_PROG_OBJC, AC_PROG_OBJCXX, /usr/share/automake-1.16/am/depend2.am: AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC /usr/share/automake-1.16/am/depend2.am: to 'configure.ac' and run 'aclocal' and 'autoconf' again Makefile.am: error: C++ source seen but 'CXX' is undefined Makefile.am: The usual way to define 'CXX' is to add 'AC_PROG_CXX' Makefile.am: to 'configure.ac' and run 'autoconf' again.

  2. fanquake commented at 12:14 AM on February 10, 2021: member

    My guess is that you haven't installed all of the dependencies listed in the build doc. I can create the same output as you're seeing, in a new Ubuntu Focal Docker container, if all I've apt installed is git & autoconf:

    root@7d9c01515d89:/bitcoin# ./autogen.sh
    configure.ac:28: installing 'build-aux/install-sh'
    configure.ac:28: installing 'build-aux/missing'
    Makefile.am:8: error: Libtool library used but 'LIBTOOL' is undefined
    Makefile.am:8:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
    Makefile.am:8:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
    Makefile.am:8:   If 'LT_INIT' is in 'configure.ac', make sure
    Makefile.am:8:   its definition is in aclocal's search path.
    Makefile.am: installing 'build-aux/depcomp'
    /usr/share/automake-1.16/am/depend2.am: error: am__fastdepCXX does not appear in AM_CONDITIONAL
    /usr/share/automake-1.16/am/depend2.am:   The usual way to define 'am__fastdepCXX' is to add 'AC_PROG_CXX'
    /usr/share/automake-1.16/am/depend2.am:   to 'configure.ac' and run 'aclocal' and 'autoconf' again
    /usr/share/automake-1.16/am/depend2.am: error: AMDEP does not appear in AM_CONDITIONAL
    /usr/share/automake-1.16/am/depend2.am:   The usual way to define 'AMDEP' is to add one of the compiler tests
    /usr/share/automake-1.16/am/depend2.am:     AC_PROG_CC, AC_PROG_CXX, AC_PROG_OBJC, AC_PROG_OBJCXX,
    /usr/share/automake-1.16/am/depend2.am:     AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC
    /usr/share/automake-1.16/am/depend2.am:   to 'configure.ac' and run 'aclocal' and 'autoconf' again
    Makefile.am: error: C++ source seen but 'CXX' is undefined
    Makefile.am:   The usual way to define 'CXX' is to add 'AC_PROG_CXX'
    Makefile.am:   to 'configure.ac' and run 'autoconf' again.
    parallel-tests: installing 'build-aux/test-driver'
    autoreconf: automake failed with exit status: 1
    

    Installing all of the build dependencies will likely fix your issue:

    apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils python3
    
  3. josephkniest commented at 3:33 AM on February 10, 2021: none

    That certainly got me a bit closer. Next up executing "./configure"

    leads to

    "configure: error: libdb_cxx headers missing, Bitcoin Core requires this library for BDB wallet support (--without-bdb to disable BDB wallet support)"

    I ran "./configure" right after running "./autogen.sh" without error.

  4. fanquake commented at 3:37 AM on February 10, 2021: member

    Well if you need BDB wallet support, you should be following the instructions in the same build-unix documentation to install bdb. If you don't need it, pass --without-bdb.

  5. josephkniest commented at 4:17 AM on February 10, 2021: none

    Interesting. After running "./contrib/install_db4.sh pwd" I get the same error after configuring the make target "./configure"

  6. MarcoFalke commented at 8:18 AM on February 10, 2021: member

    You'll need to follow the instructions that were printed once you ran the install_db4.sh script

    Alternatively install libdb++-dev and pass --with-incompatible-bdb. See https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md#dependency-build-instructions

  7. MarcoFalke closed this on Feb 10, 2021

  8. jonatack commented at 8:34 AM on February 10, 2021: member
  9. DrahtBot locked this on Aug 18, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-29 03:14 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me