Build of tests fails on FreeBSD 12.0 #18869

issue laanwj openend this issue on May 4, 2020
  1. laanwj commented at 5:45 pm on May 4, 2020: member

    Building on FreeBSD gives a huge number of linker errors while building test_bitcoin:

     0user@medea:~/src/bitcoin % gmake                                                                          
     1Making all in src                                                                                         
     2gmake[1]: Entering directory '/usr/home/user/src/bitcoin/src'                                             
     3gmake[2]: Entering directory '/usr/home/user/src/bitcoin/src'                                             
     4  CXXLD    test/test_bitcoin                                                                              
     5/usr/bin/ld: error: undefined symbol: BasicTestingSetup::BasicTestingSetup(std::__1::basic_string<char, st
     6d::__1::char_traits<char>, std::__1::allocator<char> > const&)                                            
     7>>> referenced by amount_tests.cpp:13 (test/amount_tests.cpp:13)                                          
     8>>>               test/test_bitcoin-amount_tests.o:(amount_tests::MoneyRangeTest_invoker())               
     9                                                                                                          
    10/usr/bin/ld: error: undefined symbol: BasicTestingSetup::BasicTestingSetup(std::__1::basic_string<char, st
    11d::__1::char_traits<char>, std::__1::allocator<char> > const&)                                            
    12>>> referenced by amount_tests.cpp:22 (test/amount_tests.cpp:22)                                       
    13>>>               test/test_bitcoin-amount_tests.o:(amount_tests::GetFeeTest_invoker())                   
    14                                                                                                          
    15/usr/bin/ld: error: undefined symbol: BasicTestingSetup::BasicTestingSetup(std::__1::basic_string<char, st
    16d::__1::char_traits<char>, std::__1::allocator<char> > const&)                                            
    17>>> referenced by amount_tests.cpp:89 (test/amount_tests.cpp:89)                                          
    18>>>               test/test_bitcoin-amount_tests.o:(amount_tests::BinaryOperatorTest_invoker())           
    19                                                                                                          
    20/usr/bin/ld: error: undefined symbol: BasicTestingSetup::BasicTestingSetup(std::__1::basic_string<char, st
    21d::__1::char_traits<char>, std::__1::allocator<char> > const&)                                            
    22>>> referenced by flatfile_tests.cpp:15 (test/flatfile_tests.cpp:15)                                      
    23>>>               test/test_bitcoin-flatfile_tests.o:(flatfile_tests::flatfile_filename_invoker())        
    24                                                                                                          
    25/usr/bin/ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)          
    26c++: error: linker command failed with exit code 1 (use -v to see invocation)                             
    27gmake[2]: *** [Makefile:8553: test/test_bitcoin] Error 1                                               
    28gmake[2]: Leaving directory '/usr/home/user/src/bitcoin/src'                                              
    29gmake[1]: *** [Makefile:17674: all-recursive] Error 1                                                     
    30gmake[1]: Leaving directory '/usr/home/user/src/bitcoin/src'                                              
    31gmake: *** [Makefile:781: all-recursive] Error 1   
    

    bitcoind itself, as well as the other cli tools, is built succesfully.

  2. laanwj added the label Bug on May 4, 2020
  3. laanwj added the label Build system on May 4, 2020
  4. laanwj added the label Linux/Unix on May 4, 2020
  5. MarcoFalke commented at 6:29 pm on May 4, 2020: member

    Which version of freebsd? On a fresh 12.1 I get no linker errors (only boost compile warnings)

    https://cirrus-ci.com/task/5728076485099520?command=make#L1335

  6. laanwj commented at 6:32 pm on May 4, 2020: member
    12.0-RELEASE-p10 according to freebsd-version
  7. laanwj commented at 6:33 pm on May 4, 2020: member
    If you say it works fine with 12.1, ok good, I won’t spend anymore time on this. I can build bitcoind for now and will see about the tests again when I’ve upgraded the distribution.
  8. laanwj renamed this:
    Build of tests fails on FreeBSD
    Build of tests fails on FreeBSD 12.0
    on May 4, 2020
  9. MarcoFalke commented at 6:35 pm on May 4, 2020: member
    Which commit is this? The BasicTestingSetup(const std::string&) constructor no longer exists in current master. Does make clean, or similar way to clean old object files help?
  10. laanwj commented at 6:38 pm on May 4, 2020: member

    Yes, I did a make clean.

    Edit: deleted everything and started from a clean git tree, as we do.

  11. laanwj commented at 8:06 pm on May 4, 2020: member
    Ok, building from an entirely new git tree seems to work. No idea what the problem was.
  12. laanwj closed this on May 4, 2020

  13. DrahtBot locked this on Feb 15, 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: 2024-12-21 15:12 UTC

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