Comprehensive compilation documentation #21131

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

    There doesn't appear to be a comprehensive guide to compiling the exchange. After standing up an ubuntu machine with the GNU basics (including gcc), I try the following to get all the compilation dependencies

    root@058f87446885:/# cd bitcoin/depends root@058f87446885:/bitcoin/depends# make
    Extracting native_b2... /bitcoin/depends/sources/boost_1_71_0.tar.bz2: OK Preprocessing native_b2... Configuring native_b2... Building native_b2... B2_TOOLSET is gcc, but the 'gcc' command cannot be executed. Make sure 'gcc' is in PATH, or use a different toolset. make: *** [funcs.mk:275: /bitcoin/depends/work/build/x86_64-pc-linux-gnu/native_b2/1_71_0-f8a2e703c63/tools/build/src/engine/.stamp_built] Error 1

    But clearly gcc is available and on the path:

    root@058f87446885:/bitcoin/depends# which gcc /usr/bin/gcc root@058f87446885:/bitcoin/depends# gcc gcc: fatal error: no input files compilation terminated.

    I doubt this is a bug, just a symptom of a lack of a full document describing getting started developing with the exchange.

  2. sipa commented at 8:41 PM on February 9, 2021: member

    exchange?

  3. MarcoFalke commented at 8:42 PM on February 9, 2021: member

    We do have extensive docs: https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md

    Please let us know the exact steps to reproduce the failure (including OS, ...)

  4. MarcoFalke closed this on Feb 9, 2021

  5. josephkniest commented at 9:09 PM on February 9, 2021: none

    OS version:

    root@058f87446885:/bitcoin# cat /etc/issue Ubuntu 20.04.1 LTS \n \l

    Does the following mean I am missing dependencies? If so it would be great if installing those dependencies was documented prior to executing the build steps that require those dependencies.

    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. autoreconf: automake failed with exit status: 1

  6. josephkniest commented at 9:12 PM on February 9, 2021: none

    This is how the dev image gets created:

    Image

    FROM ubuntu

    Pull ubuntu packages

    RUN apt-get update

    RUN apt-get install -y sudo

    RUN sudo apt-get install -y git

    RUN git clone https://github.com/bitcoin/bitcoin.git

    RUN sudo apt-get install -y nano

    RUN sudo apt-get install -y curl

    RUN sudo apt-get install -y make

    RUN sudo apt-get install -y gcc

  7. MarcoFalke commented at 8:17 AM on February 10, 2021: member
  8. 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