doc: add missing packages for BSDs (cmake, gmake, curl) to depends/README.md #32711

pull theStack wants to merge 1 commits into bitcoin:master from theStack:202506-depends-readme-add_missing_bsd_package_installs changing 1 files +3 −3
  1. theStack commented at 12:50 PM on June 9, 2025: contributor

    Suggested initially only for OpenBSD and cmake (see #32690 (comment), #32690 (comment)), this PR adds missing package recommendations for other BSDs as well in order to build depends. I tested this only on OpenBSD, but found the package names for the other BSDs on the ports search engines:

    At least on OpenBSD, curl is a dependency of git, so most users will not need to install it explicitly. But as git is not the only way to obtain the source code, I think it doesn't hurt to list it, and we also do it already for Ubuntu & Debian: https://github.com/bitcoin/bitcoin/blob/f3bbc746647d1fd23bf5cfe357e32f38c5f6319c/depends/README.md?plain=1#L9-L11

  2. DrahtBot commented at 12:50 PM on June 9, 2025: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--006a51241073e994b41acfe9ec718e94-->

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32711.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK hebasto, maflcko, Sjors

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    <!--5faf32d7da4f0f540f40219e4f7537a3-->

  3. DrahtBot added the label Docs on Jun 9, 2025
  4. maflcko commented at 1:02 PM on June 9, 2025: member

    lgtm ACK f8ff5690212866597958a52d4cd049d66e51d9fd

  5. Sjors commented at 7:41 AM on June 10, 2025: member

    utACK f8ff5690212866597958a52d4cd049d66e51d9fd

    I also only tested on OpenBSD.

    cc @vasild

  6. in depends/README.md:34 in f8ff569021 outdated
      30 | @@ -31,23 +31,23 @@ To build dependencies for the current arch+OS:
      31 |  
      32 |  ### FreeBSD
      33 |  
      34 | -    pkg install bash
      35 | +    pkg install bash cmake curl gmake
    


    hebasto commented at 8:26 AM on June 10, 2025:

    Strictly speaking, cmake-core should suffice.

  7. doc: add missing packages for BSDs (cmake, gmake, curl) to depends/README.md 89526deddf
  8. in depends/README.md:42 in f8ff569021 outdated
      39 |      gmake
      40 |  
      41 |  ### NetBSD
      42 |  
      43 | -    pkgin install bash gmake
      44 | +    pkgin install bash cmake curl gmake
    


    hebasto commented at 8:51 AM on June 10, 2025:

    The perl package is necessary to provide shasum: https://github.com/bitcoin/bitcoin/blob/dff208bd5a14d6c3384a0f55cfefb14c29789c57/depends/builders/netbsd.mk#L1

    UPD. Maybe switch to sha256 -n? However, its output differs from shasum -a 256:

    $ shasum -a 256 ~/.shrc
    48ecee647f7ca1283a0a0bfed04557e26365cfe4b70babb957a5370dc4bb954c  /home/hebasto/.shrc
    $ sha256 -n ~/.shrc
    48ecee647f7ca1283a0a0bfed04557e26365cfe4b70babb957a5370dc4bb954c /home/hebasto/.shrc
    

    hebasto commented at 9:24 AM on June 10, 2025:

    On NetBSD 10.1, the default compiler is GCC 10.5.0, which makes it necessary to install a newer one: ~gcc12, gcc13 or~ gcc14.

    UPD. This issue is already mentioned in doc/build-netbsd.md.

    UPD2. Actually, the capnp package in depends fails to build with gcc12 or gcc13:

    Building native_capnp...
    CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
      Compatibility with CMake < 3.10 will be removed from a future version of
      CMake.
      Update the VERSION argument <min> value.  Or, use the <min>...<max> syntax
      to tell CMake that the project requires at least <min> but has been updated
      to work with policies introduced by <max> or earlier.
    -- The CXX compiler identification is GNU 13.3.0
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Check for working CXX compiler: /usr/pkg/gcc13/bin/g++ - skipped
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Looking for C++ include initializer_list
    -- Looking for C++ include initializer_list - found
    -- Looking for makecontext in c
    -- Looking for makecontext in c - found
    -- Configuring done (0.6s)
    -- Generating done (0.1s)
    -- Build files have been written to: /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8
    gmake[1]: Entering directory '/home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8'
    [  3%] Building CXX object src/kj/CMakeFiles/kj.dir/cidr.c++.o
    [  4%] Building CXX object src/kj/CMakeFiles/kj.dir/list.c++.o
    [  4%] Building CXX object src/kj/CMakeFiles/kj.dir/common.c++.o
    [  4%] Building CXX object src/kj/CMakeFiles/kj.dir/array.c++.o
    [  5%] Building CXX object src/kj/CMakeFiles/kj.dir/debug.c++.o
    [  6%] Building CXX object src/kj/CMakeFiles/kj.dir/exception.c++.o
    [  7%] Building CXX object src/kj/CMakeFiles/kj.dir/io.c++.o
    [  8%] Building CXX object src/kj/CMakeFiles/kj.dir/memory.c++.o
    [  9%] Building CXX object src/kj/CMakeFiles/kj.dir/mutex.c++.o
    [ 10%] Building CXX object src/kj/CMakeFiles/kj.dir/string.c++.o
    [ 12%] Building CXX object src/kj/CMakeFiles/kj.dir/source-location.c++.o
    [ 13%] Building CXX object src/kj/CMakeFiles/kj.dir/hash.c++.o
    [ 14%] Building CXX object src/kj/CMakeFiles/kj.dir/table.c++.o
    [ 15%] Building CXX object src/kj/CMakeFiles/kj.dir/thread.c++.o
    [ 16%] Building CXX object src/kj/CMakeFiles/kj.dir/main.c++.o
    [ 17%] Building CXX object src/kj/CMakeFiles/kj.dir/arena.c++.o
    [ 18%] Building CXX object src/kj/CMakeFiles/kj.dir/test-helpers.c++.o
    [ 19%] Building CXX object src/kj/CMakeFiles/kj.dir/units.c++.o
    [ 20%] Building CXX object src/kj/CMakeFiles/kj.dir/encoding.c++.o
    [ 23%] Building CXX object src/kj/CMakeFiles/kj.dir/refcount.c++.o
    [ 23%] Building CXX object src/kj/CMakeFiles/kj.dir/string-tree.c++.o
    [ 24%] Building CXX object src/kj/CMakeFiles/kj.dir/time.c++.o
    [ 25%] Building CXX object src/kj/CMakeFiles/kj.dir/filesystem.c++.o
    [ 26%] Building CXX object src/kj/CMakeFiles/kj.dir/filesystem-disk-unix.c++.o
    [ 27%] Building CXX object src/kj/CMakeFiles/kj.dir/filesystem-disk-win32.c++.o
    [ 28%] Building CXX object src/kj/CMakeFiles/kj.dir/parse/char.c++.o
    [ 29%] Linking CXX static library libkj.a
    [ 29%] Built target kj
    [ 30%] Building CXX object src/capnp/CMakeFiles/capnp.dir/blob.c++.o
    [ 31%] Building CXX object src/capnp/CMakeFiles/capnp.dir/c++.capnp.c++.o
    [ 32%] Building CXX object src/kj/CMakeFiles/kj-test.dir/test.c++.o
    [ 34%] Building CXX object src/kj/CMakeFiles/kj-async.dir/async.c++.o
    In file included from /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/src/kj/async.c++:42:
    /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/src/kj/async.h:39:6: error: #error "Fibers cannot be enabled when exceptions are disabled."
       39 |     #error "Fibers cannot be enabled when exceptions are disabled."
          |      ^~~~~
    [ 35%] Building CXX object src/capnp/CMakeFiles/capnp.dir/arena.c++.o
    [ 36%] Building CXX object src/kj/CMakeFiles/kj-async.dir/async-unix.c++.o
    In file included from /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/src/kj/async-unix.h:28,
                     from /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/src/kj/async-unix.c++:24:
    /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/src/kj/async.h:39:6: error: #error "Fibers cannot be enabled when exceptions are disabled."
       39 |     #error "Fibers cannot be enabled when exceptions are disabled."
          |      ^~~~~
    [ 37%] Linking CXX static library libkj-test.a
    [ 37%] Built target kj-test
    [ 38%] Building CXX object src/kj/CMakeFiles/kj-async.dir/async-win32.c++.o
    [ 39%] Building CXX object src/capnp/CMakeFiles/capnp.dir/layout.c++.o
    gmake[3]: *** [src/kj/CMakeFiles/kj-async.dir/build.make:93: src/kj/CMakeFiles/kj-async.dir/async-unix.c++.o] Error 1
    gmake[3]: *** Waiting for unfinished jobs....
    [ 40%] Building CXX object src/capnp/CMakeFiles/capnp.dir/list.c++.o
    [ 41%] Building CXX object src/capnp/CMakeFiles/capnp.dir/any.c++.o
    gmake[3]: *** [src/kj/CMakeFiles/kj-async.dir/build.make:79: src/kj/CMakeFiles/kj-async.dir/async.c++.o] Error 1
    gmake[2]: *** [CMakeFiles/Makefile2:242: src/kj/CMakeFiles/kj-async.dir/all] Error 2
    gmake[2]: *** Waiting for unfinished jobs....
    [ 42%] Building CXX object src/capnp/CMakeFiles/capnp.dir/message.c++.o
    [ 43%] Building CXX object src/capnp/CMakeFiles/capnp.dir/schema.capnp.c++.o
    [ 45%] Building CXX object src/capnp/CMakeFiles/capnp.dir/stream.capnp.c++.o
    [ 46%] Building CXX object src/capnp/CMakeFiles/capnp.dir/serialize.c++.o
    [ 47%] Building CXX object src/capnp/CMakeFiles/capnp.dir/serialize-packed.c++.o
    [ 48%] Building CXX object src/capnp/CMakeFiles/capnp.dir/schema.c++.o
    [ 49%] Building CXX object src/capnp/CMakeFiles/capnp.dir/schema-loader.c++.o
    [ 50%] Building CXX object src/capnp/CMakeFiles/capnp.dir/dynamic.c++.o
    [ 51%] Building CXX object src/capnp/CMakeFiles/capnp.dir/stringify.c++.o
    [ 52%] Linking CXX static library libcapnp.a
    [ 52%] Built target capnp
    gmake[1]: *** [Makefile:136: all] Error 2
    gmake[1]: Leaving directory '/home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8'
    gmake: *** [funcs.mk:342: /home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends/work/build/x86_64-unknown-netbsd10.1/native_capnp/1.1.0-7f750be53a8/./.stamp_built] Error 1
    gmake: Leaving directory '/home/runner/work/bitcoin-core-nightly/bitcoin-core-nightly/depends'
    

    cc: @ryanofsky


    fanquake commented at 11:32 AM on June 10, 2025:
  9. theStack force-pushed on Jun 10, 2025
  10. theStack commented at 11:23 AM on June 10, 2025: contributor

    Thanks for the reviews! @hebasto: only added the "perl" package to the NetBSD list for now, as we seem to generally not explicitly list compilers here (looking at the "Ubuntu & Debian" line). Could bump to gcc14 in the build readme if desired, though I think the underlying gcc12/13 issue should be fixed in a different PR, likely involving an capnp upstream patch.

  11. hebasto approved
  12. hebasto commented at 11:29 AM on June 10, 2025: member

    ACK 89526deddf87904619b26319e8d149cf97466868.

  13. DrahtBot requested review from maflcko on Jun 10, 2025
  14. DrahtBot requested review from Sjors on Jun 10, 2025
  15. maflcko commented at 12:06 PM on June 10, 2025: member

    lgtm ACK 89526deddf87904619b26319e8d149cf97466868

  16. Sjors commented at 12:27 PM on June 10, 2025: member

    re-utACK 89526deddf87904619b26319e8d149cf97466868

  17. fanquake merged this on Jun 10, 2025
  18. fanquake closed this on Jun 10, 2025

  19. fanquake referenced this in commit 876a7b2db5 on Jun 10, 2025
  20. fanquake commented at 12:33 PM on June 10, 2025: member

    Backported to 29.x in #32589.

  21. theStack deleted the branch on Jun 10, 2025

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-05-02 15:12 UTC

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