bitcoin: Mac OS X Catalina build fails: running make says 'Nothing to be done for 'all'

I’m trying to build and compile bitcoin using the following procedure: ./autogen.sh ./configure CC=clang CXX=clang++ --with-incompatible-bdb --with-gui=no make make check && sudo make install

But I keep getting the following error after I run make: CXX util/libbitcoinconsensus_la-strencodings.lo CXXLD libbitcoinconsensus.la Making all in doc/man make[1]: Nothing to be done for 'all'. make[1]: Nothing to be done for 'all-am'.

Not sure how to fix this so would appreciate any help - thanks!

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 22 (13 by maintainers)

Most upvoted comments

@jarolrod That worked as you said - thanks again for taking the time to help me out. It’s much appreciated

Thanks a bunch to @everyone else too!

@jmoraes7 That is also not an issue. If you don’t have a bitcoin.conf then there is no bitcoin.conf to use. If you want to configure your node there is an example bitcoin.conf file in share/examples/bitcoin.conf. This example includes all possible configuration options with discription. Copy this example into your data directory.

cp share/examples/bitcoin.conf ~/my/data/dir/bitcoin.conf

Note: The default data directory on macOS is: /Users/<user>/Library/Application Support/Bitcoin/

You can now open up the copied file with your favorite text editor and uncomment the options that fit your needs.

I just ran through a fresh build on a clean install of macOS Catalina 10.15.7 and was able to build with no issues. Here are some notes:

  1. Give the macOS build docs another look. Make sure you adhere to these steps.
  2. You should have the macOS command-line tools installed. This is covered in the Preparation stage of the macOS build doc. Installing these tools will give you a compiler (supposedly gcc but really a wrapper over clang). We want to use this apple supplied compiler as I don’t know the state of your installed compilers/issues with paths.
    • running gcc -v, you should see something like this:
    $ gcc -v                                          
    Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/c++/4.2.1
    Apple clang version 12.0.0 (clang-1200.0.32.29)
    Target: x86_64-apple-darwin19.6.0
    Thread model: posix
    InstalledDir: /Library/Developer/CommandLineTools/usr/bin
    
    • If you don’t see something very similar to the above, then supply this compiler to ./configure. The install directory of this apple supplied compiler should be /Library/Developer/CommandLineTools/usr/bin. It should also be symlinked at usr/bin/gcc.
  3. Install the required/wanted dependencies per the build doc. For example, since you are explicitly passing --with-gui=no you wouldn’t need to install qt@5.
    • Note: brew should install boost as a bottled binary package, so there shouldn’t be a need for brew to compile boost
    ==> Installing boost
    ==> Pouring boost-1.75.0_2.catalina.bottle.tar.gz
    🍺  /usr/local/Cellar/boost/1.75.0_2: 15,058 files, 524.2MB
    
    • Note: There is no need to use an incompatible bdb version (unless you explicitly want to)
  4. After following these steps, there should not be an issue preventing you from building. When you get to the ./configure stage, the following should be all you need to supply (assuming the apple supplied compiler is used as gcc):
    ./configure --with-gui=no
    

AFAIK the Linux Debian-like solution to managing multiple compiler versions is to use “update-alternatives.”

IDK for MacOS but when I had issues in the past like you describe, fixing my compiler installations/paths resolved it (just one non-MacOS data point).