depends: Build qt package for FreeBSD hosts #32731

pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:250611-freebsd-qt changing 5 files +10 โˆ’3
  1. hebasto commented at 9:43 pm on June 11, 2025: member

    This PR continues the work started in #23948.

    Here is an excerpt from the log:

    0$ ./build/bin/bitcoin-qt -printtoconsole
    12025-06-12T01:06:56Z Bitcoin Core version v29.99.0-15de25ba2a28 (release build)
    22025-06-12T01:06:56Z Qt 6.7.3 (static), plugin=xcb
    32025-06-12T01:06:56Z Static plugins:
    42025-06-12T01:06:56Z  QMinimalIntegrationPlugin, version 395008
    52025-06-12T01:06:56Z  QXcbIntegrationPlugin, version 395008
    62025-06-12T01:06:56Z Style: fusion / QFusionStyle
    72025-06-12T01:06:56Z System: FreeBSD 14.3-RELEASE, x86_64-little_endian-lp64
    

    And here are the screenshots:

    image

    image

  2. hebasto added the label Build system on Jun 11, 2025
  3. DrahtBot commented at 9:43 pm on June 11, 2025: contributor

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

    Code Coverage & Benchmarks

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

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK vasild

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

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #32262 (build: Restore cross-compilation for Android by hebasto)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  4. hebasto force-pushed on Jun 11, 2025
  5. hebasto marked this as a draft on Jun 11, 2025
  6. hebasto force-pushed on Jun 11, 2025
  7. hebasto marked this as ready for review on Jun 12, 2025
  8. in depends/README.md:38 in 15de25ba2a outdated
    32@@ -33,6 +33,10 @@ To build dependencies for the current arch+OS:
    33 
    34     pkg install bash cmake curl gmake
    35 
    36+Skip the following packages if you don't intend to use the GUI and will build with [`NO_QT=1`](#dependency-options):
    37+
    38+    pkg install bison ninja pkgconf python3
    


    Sjors commented at 7:32 am on June 12, 2025:
    If you also want to add OpenBSD, pkg_add python3 won’t work and instead you have to do python and manually select 3 (though I’m sure there’s an easier way).
  9. hebasto commented at 11:13 am on June 16, 2025: member
    Friendly ping @vasild :)
  10. in depends/README.md:36 in 15de25ba2a outdated
    32@@ -33,6 +33,10 @@ To build dependencies for the current arch+OS:
    33 
    34     pkg install bash cmake curl gmake
    35 
    36+Skip the following packages if you don't intend to use the GUI and will build with [`NO_QT=1`](#dependency-options):
    


    vasild commented at 1:28 pm on June 19, 2025:

    On a pristine FreeBSD environment plus the following packages installed:

     0bash-5.2.37
     1bison-3.8.2_2,1
     2brotli-1.1.0,1
     3cmake-3.31.7
     4cmake-core-3.31.7
     5cmake-doc-3.31.7
     6cmake-man-3.31.7
     7curl-8.14.1
     8expat-2.7.1
     9gettext-runtime-0.23.1
    10gmake-4.4.1
    11indexinfo-0.3.1_1
    12jsoncpp-1.9.6_1
    13libffi-3.5.1
    14libidn2-2.3.8
    15liblz4-1.10.0,1
    16libnghttp2-1.65.0
    17libpsl-0.21.5_2
    18libssh2-1.11.1,3
    19libtextstyle-0.23.1
    20libunistring-1.3
    21libuv-1.51.0
    22m4-1.4.19_1,1
    23mpdecimal-4.0.1
    24ninja-1.11.1,4
    25pkg-2.2.0
    26pkgconf-2.4.3,1
    27python3-3_4
    28python311-3.11.13
    29readline-8.2.13_2
    30rhash-1.4.4_1
    31zstd-1.5.7
    

    I get this error:

      0bitcoin/depends$ gmake # ok
      1
      2bitcoin$ cmake -B build --toolchain depends/x86_64-unknown-freebsd14.2/toolchain.cmake 
      3-- The CXX compiler identification is Clang 19.1.7
      4-- Detecting CXX compiler ABI info
      5-- Detecting CXX compiler ABI info - done
      6-- Check for working CXX compiler: /usr/bin/clang++ - skipped
      7-- Detecting CXX compile features
      8-- Detecting CXX compile features - done
      9-- Setting build type to "RelWithDebInfo" as none was specified
     10-- Performing Test CXX_SUPPORTS__WERROR
     11-- Performing Test CXX_SUPPORTS__WERROR - Success
     12-- Performing Test CXX_SUPPORTS__G3
     13-- Performing Test CXX_SUPPORTS__G3 - Success
     14-- Performing Test LINKER_SUPPORTS__G3
     15-- Performing Test LINKER_SUPPORTS__G3 - Success
     16-- Performing Test CXX_SUPPORTS__FTRAPV
     17-- Performing Test CXX_SUPPORTS__FTRAPV - Success
     18-- Performing Test LINKER_SUPPORTS__FTRAPV
     19-- Performing Test LINKER_SUPPORTS__FTRAPV - Success
     20-- Found SQLite3: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/include (found suitable version "3.46.1", minimum required is "3.7.17")
     21-- Found ZeroMQ: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/cmake/ZeroMQ (found suitable version "4.3.5", minimum required is "4.0.0")
     22-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
     23-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
     24-- Check if compiler accepts -pthread
     25-- Check if compiler accepts -pthread - yes
     26-- Found Threads: TRUE
     27-- Using Qt bundled ZLIB.
     28-- Found WrapZLIB: TRUE
     29-- Performing Test HAVE_STDATOMIC
     30-- Performing Test HAVE_STDATOMIC - Success
     31-- Found WrapAtomic: TRUE
     32-- Using Qt bundled PCRE2.
     33-- Found WrapPCRE2: TRUE
     34-- Performing Test HAVE_GETTIME
     35-- Performing Test HAVE_GETTIME - Success
     36-- Performing Test HAVE_SHM_OPEN_SHM_UNLINK
     37-- Performing Test HAVE_SHM_OPEN_SHM_UNLINK - Success
     38-- Found WrapRt: TRUE
     39-- Using Qt bundled PNG.
     40-- Found WrapPNG: TRUE
     41-- Using Qt bundled Harfbuzz.
     42-- Found WrapHarfbuzz: TRUE
     43-- Found WrapSystemFreetype: TRUE (found version "2.11.0")
     44-- Using system Freetype.
     45-- Found WrapFreetype: TRUE
     46-- Found Fontconfig: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/libfontconfig.so (found version "2.12.6")
     47-- Found XKB: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/libxkbcommon.so (Required is at least version "0.5.0")
     48-- Checking for module 'xkbcommon-x11>=0.4.1'
     49--   Package 'xkbcommon-x11' not found
     50CMake Warning at /usr/local/share/cmake/Modules/CMakeFindDependencyMacro.cmake:76 (find_package):
     51  Found package configuration file:
     52
     53    /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6XcbQpaPrivate/Qt6XcbQpaPrivateConfig.cmake
     54
     55  but it set Qt6XcbQpaPrivate_FOUND to FALSE so package "Qt6XcbQpaPrivate" is
     56  considered to be NOT FOUND.  Reason given by package:
     57
     58  Qt6XcbQpaPrivate could not be found because dependency XKB_COMMON_X11 could
     59  not be found.
     60
     61  Configuring with --debug-find-pkg=XKB_COMMON_X11 might reveal details why
     62  the package was not found.
     63
     64  Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
     65  of the path variables that find_package uses to try and find the package.
     66
     67Call Stack (most recent call first):
     68  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6/QtPublicDependencyHelpers.cmake:111 (find_dependency)
     69  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6QXcbIntegrationPluginDependencies.cmake:18 (_qt_internal_find_qt_dependencies)
     70  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6QXcbIntegrationPluginConfig.cmake:51 (include)
     71  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6/QtPublicPluginHelpers.cmake:518 (include)
     72  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6GuiPlugins.cmake:13 (__qt_internal_include_plugin_packages)
     73  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6GuiConfig.cmake:147 (include)
     74  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6/Qt6Config.cmake:169 (find_package)
     75  cmake/module/FindQt.cmake:30 (find_package)
     76  CMakeLists.txt:166 (find_package)
     77
     78
     79-- Found Qt: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6 (found suitable version "6.7.3", minimum required is "6.2")
     80-- Performing Test LINKER_SUPPORTS__WL___FATAL_WARNINGS
     81-- Performing Test LINKER_SUPPORTS__WL___FATAL_WARNINGS - Success
     82-- Found Boost: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/include (found suitable version "1.81.0", minimum required is "1.73.0")
     83-- Performing Test NO_DIAGNOSTICS_BOOST_NO_CXX98_FUNCTION_BASE
     84-- Performing Test NO_DIAGNOSTICS_BOOST_NO_CXX98_FUNCTION_BASE - Failed
     85-- Found Libevent: /tmp/bitcoin/depends/x86_64-unknown-freebsd14.2/lib/cmake/libevent (found suitable version "2.1.12", minimum required is "2.1.8")
     86-- Performing Test HAVE_EVHTTP_CONNECTION_GET_PEER_CONST_CHAR
     87-- Performing Test HAVE_EVHTTP_CONNECTION_GET_PEER_CONST_CHAR - Failed
     88-- Looking for O_CLOEXEC
     89-- Looking for O_CLOEXEC - found
     90-- Looking for fdatasync
     91-- Looking for fdatasync - found
     92-- Looking for fork
     93-- Looking for fork - found
     94-- Looking for pipe2
     95-- Looking for pipe2 - found
     96-- Looking for setsid
     97-- Looking for setsid - found
     98-- Performing Test IFADDR_LINKS_WITHOUT_LIBSOCKET
     99-- Performing Test IFADDR_LINKS_WITHOUT_LIBSOCKET - Success
    100-- Performing Test STD_ATOMIC_LINKS_WITHOUT_LIBATOMIC
    101-- Performing Test STD_ATOMIC_LINKS_WITHOUT_LIBATOMIC - Success
    102-- Looking for std::system
    103-- Looking for std::system - found
    104-- Looking for ::_wsystem
    105-- Looking for ::_wsystem - not found
    106-- Performing Test STRERROR_R_CHAR_P
    107-- Performing Test STRERROR_R_CHAR_P - Failed
    108-- Looking for malloc_info
    109-- Looking for malloc_info - not found
    110-- Performing Test HAVE_MALLOPT_ARENA_MAX
    111-- Performing Test HAVE_MALLOPT_ARENA_MAX - Failed
    112-- Performing Test HAVE_POSIX_FALLOCATE
    113-- Performing Test HAVE_POSIX_FALLOCATE - Success
    114-- Performing Test HAVE_STRONG_GETAUXVAL
    115-- Performing Test HAVE_STRONG_GETAUXVAL - Failed
    116-- Performing Test HAVE_SOCKADDR_UN
    117-- Performing Test HAVE_SOCKADDR_UN - Success
    118-- Performing Test HAVE_GETRANDOM
    119-- Performing Test HAVE_GETRANDOM - Success
    120-- Performing Test HAVE_GETENTROPY_RAND
    121-- Performing Test HAVE_GETENTROPY_RAND - Failed
    122-- Performing Test HAVE_SYSCTL
    123-- Performing Test HAVE_SYSCTL - Success
    124-- Performing Test HAVE_SYSCTL_ARND
    125-- Performing Test HAVE_SYSCTL_ARND - Success
    126-- Performing Test HAVE_SSE41
    127-- Performing Test HAVE_SSE41 - Success
    128-- Performing Test HAVE_AVX2
    129-- Performing Test HAVE_AVX2 - Success
    130-- Performing Test HAVE_X86_SHANI
    131-- Performing Test HAVE_X86_SHANI - Success
    132-- Performing Test HAVE_ARM_SHANI
    133-- Performing Test HAVE_ARM_SHANI - Failed
    134-- Performing Test CXX_SUPPORTS__WALL
    135-- Performing Test CXX_SUPPORTS__WALL - Success
    136-- Performing Test CXX_SUPPORTS__WEXTRA
    137-- Performing Test CXX_SUPPORTS__WEXTRA - Success
    138-- Performing Test CXX_SUPPORTS__WGNU
    139-- Performing Test CXX_SUPPORTS__WGNU - Success
    140-- Performing Test CXX_SUPPORTS__WFORMAT__WFORMAT_SECURITY
    141-- Performing Test CXX_SUPPORTS__WFORMAT__WFORMAT_SECURITY - Success
    142-- Performing Test CXX_SUPPORTS__WVLA
    143-- Performing Test CXX_SUPPORTS__WVLA - Success
    144-- Performing Test CXX_SUPPORTS__WSHADOW_FIELD
    145-- Performing Test CXX_SUPPORTS__WSHADOW_FIELD - Success
    146-- Performing Test CXX_SUPPORTS__WTHREAD_SAFETY
    147-- Performing Test CXX_SUPPORTS__WTHREAD_SAFETY - Success
    148-- Performing Test CXX_SUPPORTS__WTHREAD_SAFETY_POINTER
    149-- Performing Test CXX_SUPPORTS__WTHREAD_SAFETY_POINTER - Failed
    150-- Performing Test CXX_SUPPORTS__WLOOP_ANALYSIS
    151-- Performing Test CXX_SUPPORTS__WLOOP_ANALYSIS - Success
    152-- Performing Test CXX_SUPPORTS__WREDUNDANT_DECLS
    153-- Performing Test CXX_SUPPORTS__WREDUNDANT_DECLS - Success
    154-- Performing Test CXX_SUPPORTS__WUNUSED_MEMBER_FUNCTION
    155-- Performing Test CXX_SUPPORTS__WUNUSED_MEMBER_FUNCTION - Success
    156-- Performing Test CXX_SUPPORTS__WDATE_TIME
    157-- Performing Test CXX_SUPPORTS__WDATE_TIME - Success
    158-- Performing Test CXX_SUPPORTS__WCONDITIONAL_UNINITIALIZED
    159-- Performing Test CXX_SUPPORTS__WCONDITIONAL_UNINITIALIZED - Success
    160-- Performing Test CXX_SUPPORTS__WDUPLICATED_BRANCHES
    161-- Performing Test CXX_SUPPORTS__WDUPLICATED_BRANCHES - Failed
    162-- Performing Test CXX_SUPPORTS__WDUPLICATED_COND
    163-- Performing Test CXX_SUPPORTS__WDUPLICATED_COND - Failed
    164-- Performing Test CXX_SUPPORTS__WLOGICAL_OP
    165-- Performing Test CXX_SUPPORTS__WLOGICAL_OP - Failed
    166-- Performing Test CXX_SUPPORTS__WOVERLOADED_VIRTUAL
    167-- Performing Test CXX_SUPPORTS__WOVERLOADED_VIRTUAL - Success
    168-- Performing Test CXX_SUPPORTS__WSUGGEST_OVERRIDE
    169-- Performing Test CXX_SUPPORTS__WSUGGEST_OVERRIDE - Success
    170-- Performing Test CXX_SUPPORTS__WIMPLICIT_FALLTHROUGH
    171-- Performing Test CXX_SUPPORTS__WIMPLICIT_FALLTHROUGH - Success
    172-- Performing Test CXX_SUPPORTS__WUNREACHABLE_CODE
    173-- Performing Test CXX_SUPPORTS__WUNREACHABLE_CODE - Success
    174-- Performing Test CXX_SUPPORTS__WDOCUMENTATION
    175-- Performing Test CXX_SUPPORTS__WDOCUMENTATION - Success
    176-- Performing Test CXX_SUPPORTS__WSELF_ASSIGN
    177-- Performing Test CXX_SUPPORTS__WSELF_ASSIGN - Success
    178-- Performing Test CXX_SUPPORTS__WBIDI_CHARS_ANY
    179-- Performing Test CXX_SUPPORTS__WBIDI_CHARS_ANY - Failed
    180-- Performing Test CXX_SUPPORTS__WUNDEF
    181-- Performing Test CXX_SUPPORTS__WUNDEF - Success
    182-- Performing Test CXX_SUPPORTS__WUNUSED_PARAMETER
    183-- Performing Test CXX_SUPPORTS__WUNUSED_PARAMETER - Success
    184-- Performing Test CXX_SUPPORTS__FNO_EXTENDED_IDENTIFIERS
    185-- Performing Test CXX_SUPPORTS__FNO_EXTENDED_IDENTIFIERS - Failed
    186-- Performing Test CXX_SUPPORTS__FDEBUG_PREFIX_MAP_A_B
    187-- Performing Test CXX_SUPPORTS__FDEBUG_PREFIX_MAP_A_B - Success
    188-- Performing Test CXX_SUPPORTS__FMACRO_PREFIX_MAP_A_B
    189-- Performing Test CXX_SUPPORTS__FMACRO_PREFIX_MAP_A_B - Success
    190-- Performing Test CXX_SUPPORTS__FSTACK_REUSE_NONE
    191-- Performing Test CXX_SUPPORTS__FSTACK_REUSE_NONE - Failed
    192-- Performing Test CXX_SUPPORTS__U_FORTIFY_SOURCE__D_FORTIFY_SOURCE_3_2d08
    193-- Performing Test CXX_SUPPORTS__U_FORTIFY_SOURCE__D_FORTIFY_SOURCE_3_2d08 - Success
    194-- Performing Test LINKER_SUPPORTS__U_FORTIFY_SOURCE__D_FORTIFY_SOURCE_3_2d08
    195-- Performing Test LINKER_SUPPORTS__U_FORTIFY_SOURCE__D_FORTIFY_SOURCE_3_2d08 - Success
    196-- Performing Test CXX_SUPPORTS__WSTACK_PROTECTOR
    197-- Performing Test CXX_SUPPORTS__WSTACK_PROTECTOR - Success
    198-- Performing Test CXX_SUPPORTS__FSTACK_PROTECTOR_ALL
    199-- Performing Test CXX_SUPPORTS__FSTACK_PROTECTOR_ALL - Success
    200-- Performing Test LINKER_SUPPORTS__FSTACK_PROTECTOR_ALL
    201-- Performing Test LINKER_SUPPORTS__FSTACK_PROTECTOR_ALL - Success
    202-- Performing Test CXX_SUPPORTS__FCF_PROTECTION_FULL
    203-- Performing Test CXX_SUPPORTS__FCF_PROTECTION_FULL - Success
    204-- Performing Test LINKER_SUPPORTS__FCF_PROTECTION_FULL
    205-- Performing Test LINKER_SUPPORTS__FCF_PROTECTION_FULL - Success
    206-- Performing Test CXX_SUPPORTS__FSTACK_CLASH_PROTECTION
    207-- Performing Test CXX_SUPPORTS__FSTACK_CLASH_PROTECTION - Success
    208-- Performing Test LINKER_SUPPORTS__FSTACK_CLASH_PROTECTION
    209-- Performing Test LINKER_SUPPORTS__FSTACK_CLASH_PROTECTION - Success
    210-- Performing Test LINKER_SUPPORTS__WL___ENABLE_RELOC_SECTION
    211-- Performing Test LINKER_SUPPORTS__WL___ENABLE_RELOC_SECTION - Failed
    212-- Performing Test LINKER_SUPPORTS__WL___DYNAMICBASE
    213-- Performing Test LINKER_SUPPORTS__WL___DYNAMICBASE - Failed
    214-- Performing Test LINKER_SUPPORTS__WL___NXCOMPAT
    215-- Performing Test LINKER_SUPPORTS__WL___NXCOMPAT - Failed
    216-- Performing Test LINKER_SUPPORTS__WL___HIGH_ENTROPY_VA
    217-- Performing Test LINKER_SUPPORTS__WL___HIGH_ENTROPY_VA - Failed
    218-- Performing Test LINKER_SUPPORTS__WL__Z_RELRO
    219-- Performing Test LINKER_SUPPORTS__WL__Z_RELRO - Success
    220-- Performing Test LINKER_SUPPORTS__WL__Z_NOW
    221-- Performing Test LINKER_SUPPORTS__WL__Z_NOW - Success
    222-- Performing Test LINKER_SUPPORTS__WL__Z_SEPARATE_CODE
    223-- Performing Test LINKER_SUPPORTS__WL__Z_SEPARATE_CODE - Success
    224-- Found Python3: /usr/local/bin/python3 (found suitable version "3.11.13", minimum required is "3.10") found components: Interpreter
    225-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE dot) 
    226-- Performing Test HAVE_BUILTIN_PREFETCH
    227-- Performing Test HAVE_BUILTIN_PREFETCH - Success
    228-- Performing Test HAVE_MM_PREFETCH
    229-- Performing Test HAVE_MM_PREFETCH - Success
    230-- Performing Test HAVE_SSE42
    231-- Performing Test HAVE_SSE42 - Success
    232-- Performing Test HAVE_ARM64_CRC32C
    233-- Performing Test HAVE_ARM64_CRC32C - Failed
    234-- Looking for F_FULLFSYNC
    235-- Looking for F_FULLFSYNC - not found
    236-- Performing Test HAVE_CLMUL
    237-- Performing Test HAVE_CLMUL - Success
    238
    239Configuring secp256k1 subtree...
    240-- The C compiler identification is Clang 19.1.7
    241-- Detecting C compiler ABI info
    242-- Detecting C compiler ABI info - done
    243-- Check for working C compiler: /usr/bin/clang - skipped
    244-- Detecting C compile features
    245-- Detecting C compile features - done
    246-- Performing Test HAVE_X86_64_ASM
    247-- Performing Test HAVE_X86_64_ASM - Success
    248-- Could NOT find Valgrind (missing: Valgrind_INCLUDE_DIR Valgrind_WORKS) 
    249-- Performing Test C_SUPPORTS__WALL
    250-- Performing Test C_SUPPORTS__WALL - Success
    251-- Performing Test C_SUPPORTS__PEDANTIC
    252-- Performing Test C_SUPPORTS__PEDANTIC - Success
    253-- Performing Test C_SUPPORTS__WCAST_ALIGN
    254-- Performing Test C_SUPPORTS__WCAST_ALIGN - Success
    255-- Performing Test C_SUPPORTS__WCAST_ALIGN_STRICT
    256-- Performing Test C_SUPPORTS__WCAST_ALIGN_STRICT - Failed
    257-- Performing Test C_SUPPORTS__WCONDITIONAL_UNINITIALIZED
    258-- Performing Test C_SUPPORTS__WCONDITIONAL_UNINITIALIZED - Success
    259-- Performing Test C_SUPPORTS__WEXTRA
    260-- Performing Test C_SUPPORTS__WEXTRA - Success
    261-- Performing Test C_SUPPORTS__WNESTED_EXTERNS
    262-- Performing Test C_SUPPORTS__WNESTED_EXTERNS - Success
    263-- Performing Test C_SUPPORTS__WNO_LONG_LONG
    264-- Performing Test C_SUPPORTS__WNO_LONG_LONG - Success
    265-- Performing Test C_SUPPORTS__WNO_OVERLENGTH_STRINGS
    266-- Performing Test C_SUPPORTS__WNO_OVERLENGTH_STRINGS - Success
    267-- Performing Test C_SUPPORTS__WNO_UNUSED_FUNCTION
    268-- Performing Test C_SUPPORTS__WNO_UNUSED_FUNCTION - Success
    269-- Performing Test C_SUPPORTS__WRESERVED_IDENTIFIER
    270-- Performing Test C_SUPPORTS__WRESERVED_IDENTIFIER - Success
    271-- Performing Test C_SUPPORTS__WSHADOW
    272-- Performing Test C_SUPPORTS__WSHADOW - Success
    273-- Performing Test C_SUPPORTS__WSTRICT_PROTOTYPES
    274-- Performing Test C_SUPPORTS__WSTRICT_PROTOTYPES - Success
    275-- Performing Test C_SUPPORTS__WUNDEF
    276-- Performing Test C_SUPPORTS__WUNDEF - Success
    277
    278
    279secp256k1 configure summary
    280===========================
    281Build artifacts:
    282  library type ........................ Static
    283Optional modules:
    284  ECDH ................................ OFF
    285  ECDSA pubkey recovery ............... ON
    286  extrakeys ........................... ON
    287  schnorrsig .......................... ON
    288  musig ............................... OFF
    289  ElligatorSwift ...................... ON
    290Parameters:
    291  ecmult window size .................. 15
    292  ecmult gen table size ............... 86 KiB
    293Optional features:
    294  assembly ............................ x86_64
    295  external callbacks .................. OFF
    296Optional binaries:
    297  benchmark ........................... OFF
    298  noverify_tests ...................... ON
    299  tests ............................... ON
    300  exhaustive tests .................... ON
    301  ctime_tests ......................... OFF
    302  examples ............................ OFF
    303
    304Cross compiling ....................... FALSE
    305Valgrind .............................. OFF
    306Preprocessor defined macros ........... ENABLE_MODULE_ELLSWIFT=1 ENABLE_MODULE_SCHNORRSIG=1 ENABLE_MODULE_EXTRAKEYS=1 ENABLE_MODULE_RECOVERY=1 ECMULT_WINDOW_SIZE=15 COMB_BLOCKS=43 COMB_TEETH=6 USE_ASM_X86_64=1
    307C compiler ............................ Clang 19.1.7, /usr/bin/clang
    308CFLAGS ................................ -pipe -std=c11
    309Compile options ....................... -Wall -pedantic -Wcast-align -Wconditional-uninitialized -Wextra -Wnested-externs -Wno-long-long -Wno-overlength-strings -Wno-unused-function -Wreserved-identifier -Wshadow -Wstrict-prototypes -Wundef
    310Build type:
    311 - CMAKE_BUILD_TYPE ................... RelWithDebInfo
    312 - CFLAGS ............................. -O2 -O2 -g 
    313 - LDFLAGS for executables ............ 
    314 - LDFLAGS for shared libraries ....... 
    315
    316
    317
    318Configure summary
    319=================
    320Executables:
    321  bitcoin ............................. ON
    322  bitcoind ............................ ON
    323  bitcoin-node (multiprocess) ......... OFF
    324  bitcoin-qt (GUI) .................... ON
    325  bitcoin-gui (GUI, multiprocess) ..... OFF
    326  bitcoin-cli ......................... ON
    327  bitcoin-tx .......................... ON
    328  bitcoin-util ........................ ON
    329  bitcoin-wallet ...................... ON
    330  bitcoin-chainstate (experimental) ... OFF
    331  libbitcoinkernel (experimental) ..... OFF
    332Optional features:
    333  wallet support ...................... ON
    334  external signer ..................... ON
    335  ZeroMQ .............................. ON
    336  IPC ................................. OFF
    337  USDT tracing ........................ OFF
    338  QR code (GUI) ....................... OFF
    339  DBus (GUI) .......................... ON
    340Tests:
    341  test_bitcoin ........................ ON
    342  test_bitcoin-qt ..................... ON
    343  bench_bitcoin ....................... OFF
    344  fuzz binary ......................... OFF
    345
    346Cross compiling ....................... FALSE
    347C++ compiler .......................... Clang 19.1.7, /usr/bin/clang++
    348CMAKE_BUILD_TYPE ...................... RelWithDebInfo
    349Preprocessor defined macros ........... 
    350C++ compiler flags .................... -m64 -pipe -std=c++20 -O2 -O2 -g -std=c++20 -fPIC -fdebug-prefix-map=/tmp/bitcoin/src=. -fmacro-prefix-map=/tmp/bitcoin/src=. -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -Wstack-protector -fstack-protector-all -fcf-protection=full -fstack-clash-protection $<$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>:SHELL:-Xcompiler -pthread> $<$<AND:$<NOT:$<COMPILE_LANG_AND_ID:CUDA,NVIDIA>>,$<NOT:$<COMPILE_LANGUAGE:Swift>>>:-pthread> -Wall -Wextra -Wgnu -Wformat -Wformat-security -Wvla -Wshadow-field -Wthread-safety -Wloop-analysis -Wredundant-decls -Wunused-member-function -Wdate-time -Wconditional-uninitialized -Woverloaded-virtual -Wsuggest-override -Wimplicit-fallthrough -Wunreachable-code -Wdocumentation -Wself-assign -Wundef -Wno-unused-parameter
    351Linker flags .......................... -pipe -std=c++20 -O2 -O2 -g -fstack-protector-all -fcf-protection=full -fstack-clash-protection -Wl,-z,relro -Wl,-z,now -Wl,-z,separate-code -fPIE -pie
    352
    353NOTE: The summary above may not exactly match the final applied build flags
    354      if any additional CMAKE_* or environment variables have been modified.
    355      To see the exact flags applied, build with the --verbose option.
    356
    357Treat compiler warnings as errors ..... OFF
    358Use ccache for compiling .............. OFF
    359
    360
    361-- Configuring done (4.8s)
    362CMake Error at depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6QXcbIntegrationPluginTargets.cmake:61 (set_target_properties):
    363  The link interface of target "Qt6::QXcbIntegrationPlugin" contains:
    364
    365    Qt6::XcbQpaPrivate
    366
    367  but the target was not found.  Possible reasons include:
    368
    369    * There is a typo in the target name.
    370    * A find_package call is missing for an IMPORTED target.
    371    * An ALIAS target is missing.
    372
    373Call Stack (most recent call first):
    374  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6QXcbIntegrationPluginConfig.cmake:54 (include)
    375  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6/QtPublicPluginHelpers.cmake:518 (include)
    376  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6GuiPlugins.cmake:13 (__qt_internal_include_plugin_packages)
    377  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6Gui/Qt6GuiConfig.cmake:147 (include)
    378  depends/x86_64-unknown-freebsd14.2/lib/cmake/Qt6/Qt6Config.cmake:169 (find_package)
    379  cmake/module/FindQt.cmake:30 (find_package)
    380  CMakeLists.txt:166 (find_package)
    381
    382
    383-- Generating done (0.1s)
    384CMake Generate step failed.  Build files cannot be regenerated correctly.
    

    vasild commented at 5:01 am on June 20, 2025:

    This fixes it:

     0diff --git i/depends/toolchain.cmake.in w/depends/toolchain.cmake.in
     1index a38cb6135b..6dbb13dd69 100644
     2--- i/depends/toolchain.cmake.in
     3+++ w/depends/toolchain.cmake.in
     4@@ -98,13 +98,13 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT CMAKE_HOST_APPLE)
     5   # In turn, the find_library() inspects the well-known locations
     6   # on the file system; therefore, a hint is required.
     7   set(CMAKE_FRAMEWORK_PATH "@OSX_SDK@/System/Library/Frameworks")
     8 endif()
     9 
    10 
    11-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
    12+if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|FreeBSD)$")
    13   # Customize pkg-config behavior for finding dependencies
    14   # of the xcb QPA platform plugin:
    15   # 1. Restrict search paths to the depends.
    16   # 2. Make output suitable for static linking.
    17   cmake_path(APPEND CMAKE_CURRENT_LIST_DIR "lib" "pkgconfig" OUTPUT_VARIABLE pkg_config_path)
    18   set(ENV{PKG_CONFIG_PATH} ${pkg_config_path})
    

    Result:

     0$ LD_LIBRARY_PATH=depends/x86_64-unknown-freebsd14.2/lib ldd ./build/bin/bitcoin-qt
     1./build/bin/bitcoin-qt:
     2	libfontconfig.so.1 => depends/x86_64-unknown-freebsd14.2/lib/libfontconfig.so.1 (0x2c3cbfac6000)
     3	libfreetype.so.6 => depends/x86_64-unknown-freebsd14.2/lib/libfreetype.so.6 (0x2c3cc00a8000)
     4	libxkbcommon.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxkbcommon.so.0 (0x2c3cc3426000)
     5	libxkbcommon-x11.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxkbcommon-x11.so.0 (0x2c3cc3997000)
     6	libxcb-xkb.so.1 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-xkb.so.1 (0x2c3cc534f000)
     7	libxcb.so.1 => depends/x86_64-unknown-freebsd14.2/lib/libxcb.so.1 (0x2c3cc4733000)
     8	libxcb-cursor.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-cursor.so.0 (0x2c3cc6d96000)
     9	libxcb-icccm.so.4 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-icccm.so.4 (0x2c3cc5e98000)
    10	libxcb-image.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-image.so.0 (0x2c3cc8485000)
    11	libxcb-keysyms.so.1 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-keysyms.so.1 (0x2c3cc7c0f000)
    12	libxcb-randr.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-randr.so.0 (0x2c3cc854e000)
    13	libxcb-render-util.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-render-util.so.0 (0x2c3cc8d88000)
    14	libxcb-shm.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-shm.so.0 (0x2c3cc9f9a000)
    15	libxcb-sync.so.1 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-sync.so.1 (0x2c3cc948c000)
    16	libxcb-xfixes.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-xfixes.so.0 (0x2c3ccaf00000)
    17	libxcb-render.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-render.so.0 (0x2c3ccb8f9000)
    18	libxcb-shape.so.0 => depends/x86_64-unknown-freebsd14.2/lib/libxcb-shape.so.0 (0x2c3ccb97e000)
    19	libm.so.5 => /lib/libm.so.5 (0x2c3ccc98d000)
    20	libthr.so.3 => /lib/libthr.so.3 (0x2c3ccd3a8000)
    21	libc++.so.1 => /lib/libc++.so.1 (0x2c3ccf2f9000)
    22	libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x2c3ccd7ac000)
    23	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2c3ccd916000)
    24	libc.so.7 => /lib/libc.so.7 (0x2c3cce6a0000)
    25	[vdso] (0x2c3cbf491000)
    

    Note that bitcoin-qt is linked against some dynamic libraries inside depends/ so it will not work if moved to another machine without those libraries. Is this expected?

    Here is a diff between a normally built bitcoin-qt from my dev environment without depends VS the depends one from the “pristine” environment:

     0--- /tmp/dev_env_nodepends	2025-06-20 06:47:55.626924000 +0200
     1+++ /tmp/depends	2025-06-20 06:48:09.626851000 +0200
     2@@ -1,59 +1,23 @@
     3-libb2.so.1
     4-libbrotlicommon.so.1
     5-libbrotlidec.so.1
     6-libbz2.so.4
     7-libc.so.7
     8 libc++.so.1
     9-libcrypto.so.30
    10+libc.so.7
    11 libcxxrt.so.1
    12-libdbus-1.so.3
    13-libdl.so.1
    14-libdouble-conversion.so.3
    15-libEGL.so.1
    16-libelf.so.2
    17-libevent_core-2.1.so.7
    18-libevent_extra-2.1.so.7
    19-libevent_pthreads-2.1.so.7
    20-libevent-2.1.so.7
    21-libexecinfo.so.1
    22-libexpat.so.1
    23 libfontconfig.so.1
    24 libfreetype.so.6
    25 libgcc_s.so.1
    26-libGLdispatch.so.0
    27-libglib-2.0.so.0
    28-libGLX.so.0
    29-libgraphite2.so.3
    30-libgthread-2.0.so.0
    31-libharfbuzz.so.0
    32-libiconv.so.2
    33-libicudata.so.76
    34-libicui18n.so.76
    35-libicuuc.so.76
    36-libintl.so.8
    37-libkvm.so.7
    38 libm.so.5
    39-libomp.so
    40-libOpenGL.so.0
    41-libpcre2-16.so.0
    42-libpcre2-8.so.0
    43-libpng16.so.16
    44-libprocstat.so.1
    45-libqrencode.so.4
    46-libQt6Core.so.6
    47-libQt6DBus.so.6
    48-libQt6Gui.so.6
    49-libQt6Network.so.6
    50-libQt6Widgets.so.6
    51-librt.so.1
    52-libsqlite3.so.0
    53-libssl.so.30
    54 libthr.so.3
    55-libutil.so.9
    56-libX11.so.6
    57-libXau.so.6
    58+libxcb-cursor.so.0
    59+libxcb-icccm.so.4
    60+libxcb-image.so.0
    61+libxcb-keysyms.so.1
    62+libxcb-randr.so.0
    63+libxcb-render-util.so.0
    64+libxcb-render.so.0
    65+libxcb-shape.so.0
    66+libxcb-shm.so.0
    67+libxcb-sync.so.1
    68+libxcb-xfixes.so.0
    69+libxcb-xkb.so.1
    70 libxcb.so.1
    71-libXdmcp.so.6
    72+libxkbcommon-x11.so.0
    73 libxkbcommon.so.0
    74-libz.so.6
    75-libzstd.so.1
    

    Then I can start bitcoin-qt like LD_LIBRARY_PATH=depends... bitcoin-qt and it lists Qt 6.7.3 in “Help > About Qt”. It works. I can also start bitcoin-qt without LD_LIBRARY_PATH in the dev environment where those libraries are installed system wide.


    hebasto commented at 8:32 am on June 20, 2025:

    As on Linux, the bitcoin-qt static build includes a statically linked QPA plugin for integration with X11.

    This plugin expects certain dependencies, which are reflected in our contrib/guix/symbol-check.py. On FreeBSD 14.3, these dependencies are:

     0$ ldd build/bin/bitcoin-qt
     1build/bin/bitcoin-qt:
     2	libfontconfig.so.1 => /usr/local/lib/libfontconfig.so.1 (0x1511cc83a000)
     3	libfreetype.so.6 => /usr/local/lib/libfreetype.so.6 (0x1511cd77a000)
     4	libxkbcommon.so.0 => /usr/local/lib/libxkbcommon.so.0 (0x1511ce23b000)
     5	libxkbcommon-x11.so.0 => /usr/local/lib/libxkbcommon-x11.so.0 (0x1511ce8cd000)
     6	libxcb-cursor.so.0 => /usr/local/lib/libxcb-cursor.so.0 (0x1511d2cc8000)
     7	libxcb-icccm.so.4 => /usr/local/lib/libxcb-icccm.so.4 (0x1511d256d000)
     8	libxcb-image.so.0 => /usr/local/lib/libxcb-image.so.0 (0x1511d3c52000)
     9	libxcb-keysyms.so.1 => /usr/local/lib/libxcb-keysyms.so.1 (0x1511d49ca000)
    10	libxcb-randr.so.0 => /usr/local/lib/libxcb-randr.so.0 (0x1511d4ff9000)
    11	libxcb-render-util.so.0 => /usr/local/lib/libxcb-render-util.so.0 (0x1511d5a4c000)
    12	libxcb-shm.so.0 => /usr/local/lib/libxcb-shm.so.0 (0x1511d7314000)
    13	libxcb-sync.so.1 => /usr/local/lib/libxcb-sync.so.1 (0x1511d6122000)
    14	libxcb-xfixes.so.0 => /usr/local/lib/libxcb-xfixes.so.0 (0x1511d6de2000)
    15	libxcb-render.so.0 => /usr/local/lib/libxcb-render.so.0 (0x1511d7ebe000)
    16	libxcb-shape.so.0 => /usr/local/lib/libxcb-shape.so.0 (0x1511d82b1000)
    17	libxcb-xkb.so.1 => /usr/local/lib/libxcb-xkb.so.1 (0x1511d85b5000)
    18	libxcb.so.1 => /usr/local/lib/libxcb.so.1 (0x1511d97ae000)
    19	libm.so.5 => /lib/libm.so.5 (0x1511d8f4e000)
    20	libthr.so.3 => /lib/libthr.so.3 (0x1511dac7e000)
    21	libc++.so.1 => /lib/libc++.so.1 (0x1511da5b4000)
    22	libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x1511dae0a000)
    23	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x1511dbb3a000)
    24	libc.so.7 => /lib/libc.so.7 (0x1511dc474000)
    25	libexpat.so.1 => /usr/local/lib/libexpat.so.1 (0x1511de104000)
    26	libz.so.6 => /lib/libz.so.6 (0x1511dcab3000)
    27	libbz2.so.4 => /usr/lib/libbz2.so.4 (0x1511dcb90000)
    28	libpng16.so.16 => /usr/local/lib/libpng16.so.16 (0x1511dcbc1000)
    29	libbrotlidec.so.1 => /usr/local/lib/libbrotlidec.so.1 (0x1511dcfd4000)
    30	libxcb-util.so.1 => /usr/local/lib/libxcb-util.so.1 (0x1511dd51d000)
    31	libXau.so.6 => /usr/local/lib/libXau.so.6 (0x1511dfa06000)
    32	libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x1511ded99000)
    33	libbrotlicommon.so.1 => /usr/local/lib/libbrotlicommon.so.1 (0x1511e14ee000)
    34	[vdso] (0x1511cc497000)
    

    Usually, the libraries are installed as dependencies of a desktop environment.

    Note that bitcoin-qt is linked against some dynamic libraries inside depends/ so it will not work if moved to another machine without those libraries. Is this expected?

    This is not correct. Instead of patching depends/toolchain.cmake.in, you should install X11.


    vasild commented at 8:50 am on June 20, 2025:

    Instead of patching depends/toolchain.cmake.in, you should install X11.

    Hmm, then this new addition “pkg install bison ninja pkgconf python3” is incomplete.


    vasild commented at 12:29 pm on June 23, 2025:

    By “incomplete” I mean this:

    1. install fresh FreeBSD
    2. do the pkg install commands as suggested in depends/README.md
    3. gmake
    4. cmake –toolchain … -> results in the error about Qt6::XcbQpaPrivate mentioned above

    If “X11” should be installed, then that should be mentioned with the exact names of the packages in the pkg install command, right? Here is a list of those packages that provide the libraries I mentioned above:

    0$ for f in libfontconfig.so.1 libfreetype.so.6 libxkbcommon.so.0 libxkbcommon-x11.so.0 libxcb-xkb.so.1 libxcb.so.1 libxcb-cursor.so.0 libxcb-icccm.so.4 libxcb-image.so.0 libxcb-keysyms.so.1 libxcb-randr.so.0 libxcb-render-util.so.0 libxcb-shm.so.0 libxcb-sync.so.1 libxcb-xfixes.so.0 libxcb-render.so.0 libxcb-shape.so.0 ; do pkg which -q /usr/local/lib/$f ; done |sort -u
    1fontconfig-2.15.0_3,1
    2freetype2-2.13.3
    3libxcb-1.17.0
    4libxkbcommon-1.8.1_2
    5xcb-util-cursor-0.1.3
    6xcb-util-image-0.4.1
    7xcb-util-keysyms-0.4.1
    8xcb-util-renderutil-0.3.10
    9xcb-util-wm-0.4.2
    

    hebasto commented at 1:13 pm on June 23, 2025:

    I understand. I hesitate to proceed with addressing your comment, as neither X11 nor the listed libraries are supposed to be build dependencies.

    On the other hand, FreeBSD isnโ€™t even officially supported by Qt. Would it be acceptable to proceed with this workaround?

    cc @fanquake


    fanquake commented at 10:48 am on June 24, 2025:

    This is not correct. Instead of patching depends/toolchain.cmake.in, you should install X11.

    Not sure I understand your suggestion, or why applying the patch above is not the correct thing to do? When configuring, using the toolchain from depends, we should be using dependencies from depends, not looking for system libraries?


    hebasto commented at 11:25 am on June 24, 2025:

    Accepted @vasild’s patch.

    Note that bitcoin-qt is linked against some dynamic libraries inside depends/ so it will not work if moved to another machine without those libraries. Is this expected?

    No, it is not. This should be fixed in a follow up.


    vasild commented at 1:34 pm on June 25, 2025:

    I tested the latest version of this PR (173394d951). It compiles successfully with gmake and cmake --toolchain. And this is the result:

     0$ ldd ./build/bin/bitcoin-qt
     1./build/bin/bitcoin-qt:
     2	libfontconfig.so.1 => not found (0)
     3	libfreetype.so.6 => not found (0)
     4	libxkbcommon.so.0 => not found (0)
     5	libxkbcommon-x11.so.0 => not found (0)
     6	libxcb-xkb.so.1 => not found (0)
     7	libxcb.so.1 => not found (0)
     8	libxcb-cursor.so.0 => not found (0)
     9	libxcb-icccm.so.4 => not found (0)
    10	libxcb-image.so.0 => not found (0)
    11	libxcb-keysyms.so.1 => not found (0)
    12	libxcb-randr.so.0 => not found (0)
    13	libxcb-render-util.so.0 => not found (0)
    14	libxcb-shm.so.0 => not found (0)
    15	libxcb-sync.so.1 => not found (0)
    16	libxcb-xfixes.so.0 => not found (0)
    17	libxcb-render.so.0 => not found (0)
    18	libxcb-shape.so.0 => not found (0)
    19	libm.so.5 => /lib/libm.so.5 (0x531bb95b000)
    20	libthr.so.3 => /lib/libthr.so.3 (0x531bc2e6000)
    21	libc++.so.1 => /lib/libc++.so.1 (0x531bd020000)
    22	libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x531c0a20000)
    23	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x531c1574000)
    24	libc.so.7 => /lib/libc.so.7 (0x531c21ac000)
    25	[vdso] (0x531bb88d000)
    

    Those “not found” libraries are in ./depends/x86_64-unknown-freebsd14.2/lib/ which, of course, is not the dynamic linker’s search path. So I guess from here there would be a few options:

    1. Set LD_LIBRARY_PATH to ./depends/x86_64-unknown-freebsd14.2/lib/. Can’t really ask users to do that.
    2. Install the packages that provide those libraries system wide. Can ask the users to do that - we already asked them to install 8 other packages. That would be pkg install fontconfig freetype2 libxcb libxkbcommon xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm. However maybe that is odd as @fanquake mentioned above: “we should be using dependencies from depends, not looking for system libraries”
    3. Link those libraries statically into bitcoin-qt

    How does this work on Linux? What’s the ldd ./build/bin/bitcoin-qt output? Edit: here it is on my Linux VM:

     0$ ldd ./build/bin/bitcoin-qt 
     1	linux-vdso.so.1 (0x00007ffe96732000)
     2	libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007db14b641000)
     3	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007db148f32000)
     4	libxkbcommon.so.0 => not found
     5	libxkbcommon-x11.so.0 => not found
     6	libxcb-xkb.so.1 => /usr/lib/libxcb-xkb.so.1 (0x00007db14b622000)
     7	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007db14b5f5000)
     8	libxcb-cursor.so.0 => not found
     9	libxcb-icccm.so.4 => not found
    10	libxcb-image.so.0 => not found
    11	libxcb-keysyms.so.1 => not found
    12	libxcb-randr.so.0 => /usr/lib/libxcb-randr.so.0 (0x00007db14b5e1000)
    13	libxcb-render-util.so.0 => not found
    14	libxcb-shm.so.0 => /usr/lib/libxcb-shm.so.0 (0x00007db14b5dc000)
    15	libxcb-sync.so.1 => /usr/lib/libxcb-sync.so.1 (0x00007db14b5d3000)
    16	libxcb-xfixes.so.0 => /usr/lib/libxcb-xfixes.so.0 (0x00007db14b5ca000)
    17	libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00007db14b5bb000)
    18	libxcb-shape.so.0 => /usr/lib/libxcb-shape.so.0 (0x00007db14b5b3000)
    19	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007db148c00000)
    20	libm.so.6 => /usr/lib/libm.so.6 (0x00007db148b14000)
    21	libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007db148f0d000)
    22	libc.so.6 => /usr/lib/libc.so.6 (0x00007db148932000)
    23	/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007db14b6a0000)
    24	libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007db148ee4000)
    25	libz.so.1 => /usr/lib/libz.so.1 (0x00007db148eca000)
    26	libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007db148eb7000)
    27	libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00007db148e7d000)
    28	libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0x00007db148823000)
    29	libbrotlidec.so.1 => /usr/lib/libbrotlidec.so.1 (0x00007db148814000)
    30	libXau.so.6 => /usr/lib/libXau.so.6 (0x00007db14b5ac000)
    31	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007db14880c000)
    32	libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007db1486bf000)
    33	libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0x00007db14869c000)
    34	libbrotlicommon.so.1 => /usr/lib/libbrotlicommon.so.1 (0x00007db148679000)
    35	libpcre2-8.so.0 => /usr/lib/libpcre2-8.so.0 (0x00007db1485db000)
    
  11. depends: Build `qt` package for FreeBSD hosts 173394d951
  12. in depends/packages/qt.mk:150 in 15de25ba2a outdated
    146@@ -146,6 +147,7 @@ $(package)_config_opts_linux += -xcb
    147 ifneq ($(LTO),)
    148 $(package)_config_opts_linux += -ltcg
    149 endif
    150+$(package)_config_opts_freebsd := $$($(package)_config_opts_linux)
    


    vasild commented at 5:04 am on June 20, 2025:

    (comment in random place in the diff, not to clutter the PR main thread and to make it easier to follow replies and to hide it when resolved)

    Would be good to have CI build this to make sure it does not rot.


    hebasto commented at 8:33 am on June 20, 2025:

    vasild commented at 9:01 am on June 20, 2025:
    Nice, I didn’t know about hebasto/bitcoin-core-nightly. Can it be integrated into bitcoin/bitcoin?

    hebasto commented at 9:19 am on June 20, 2025:

    Nice, I didn’t know about hebasto/bitcoin-core-nightly. Can it be integrated into bitcoin/bitcoin?

    There are some concerns about GHA resources available in this repo.


    maflcko commented at 9:31 am on June 20, 2025:

    Nice, I didn’t know about hebasto/bitcoin-core-nightly. Can it be integrated into bitcoin/bitcoin?

    nightly ci, which is expected to break over night (e.g. when a compiler is updated over night with new warnings/errors) shouldn’t be part of the main CI loop. There are already plenty of intermittent issues that are waiting to be fixed in the main CI loop and piling even more unrelated failures onto pull requests doesn’t seem useful.

    (Even if the nightly CI was perfectly stable, I don’t think it is a good use of review resources to go through the main repo, which also has to deal with backport branches… Finally, it requires to enable third party GHA actions and will eat CI resources from pull requests, as mentioned above)

    So I think a separate repo (there is actually more than one, if you follow the readme https://github.com/hebasto/bitcoin-core-nightly?tab=readme-ov-file#nightly-bitcoin-core-tests) is desirable and correct here.

  13. hebasto force-pushed on Jun 24, 2025
  14. vasild approved
  15. vasild commented at 2:06 pm on June 25, 2025: contributor

    ACK 173394d9511ed091e73eb12cb28f819026c09576

    Links against some dynamic libraries from ./depends/, but that is also on Linux: #32731 (review)

  16. fanquake merged this on Jun 26, 2025
  17. fanquake closed this on Jun 26, 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: 2025-07-07 15:13 UTC

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