'Android CMake : Could NOT find Boost

I am building an android project in Mac M1 pro using CMake. Here is my build.gradle segment:

externalNativeBuild {
        cmake {
            cppFlags ''
            arguments "-DBoost_DEBUG=ON",
                    "-DBOOST_ROOT=/opt/homebrew/Cellar/boost/1.78.0_1",
                    "-DBOOST_INCLUDEDIR=/opt/homebrew/Cellar/boost/1.78.0_1/include",
                    "-DBOOST_LIBRARYDIR=/opt/homebrew/Cellar/boost/1.78.0_1/lib"

        }
    }

I am using this in my CMakeLists.txt:

find_package(Boost 1.64.0 REQUIRED COMPONENTS ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY} ${Boost_DATE_TIME_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY} ${Boost_FILESYSTEM_LIBRARY})

I installed boost via homebrew as follows:

brew install Boost

But while building the app , I am getting this error:

-- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1491 ] _boost_TEST_VERSIONS = "1.73.0;1.73;1.72.0;1.72;1.71.0;1.71;1.70.0;1.70;1.69.0;1.69;1.68.0;1.68;1.67.0;1.67;1.66.0;1.66;1.65.1;1.65.0;1.65;1.64.0;1.64"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1492 ] Boost_USE_MULTITHREADED = "TRUE"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1493 ] Boost_USE_STATIC_LIBS = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1494 ] Boost_USE_STATIC_RUNTIME = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1495 ] Boost_ADDITIONAL_VERSIONS = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1496 ] Boost_NO_SYSTEM_PATHS = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1528 ] BOOST_ROOT = "/opt/homebrew/Cellar/boost/1.78.0_1"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1529 ] ENV{BOOST_ROOT} = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1530 ] BOOST_INCLUDEDIR = "/opt/homebrew/Cellar/boost/1.78.0_1/include"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1531 ] ENV{BOOST_INCLUDEDIR} = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1532 ] BOOST_LIBRARYDIR = "/opt/homebrew/Cellar/boost/1.78.0_1/lib"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1533 ] ENV{BOOST_LIBRARYDIR} = <unset>
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1605 ] _boost_INCLUDE_SEARCH_DIRS = "/opt/homebrew/Cellar/boost/1.78.0_1/include;/opt/homebrew/Cellar/boost/1.78.0_1/include;/opt/homebrew/Cellar/boost/1.78.0_1;PATHS;C:/boost/include;C:/boost;/sw/local/include"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1606 ] _boost_PATH_SUFFIXES = "boost-1_73_0;boost_1_73_0;boost/boost-1_73_0;boost/boost_1_73_0;boost-1_73;boost_1_73;boost/boost-1_73;boost/boost_1_73;boost-1_72_0;boost_1_72_0;boost/boost-1_72_0;boost/boost_1_72_0;boost-1_72;boost_1_72;boost/boost-1_72;boost/boost_1_72;boost-1_71_0;boost_1_71_0;boost/boost-1_71_0;boost/boost_1_71_0;boost-1_71;boost_1_71;boost/boost-1_71;boost/boost_1_71;boost-1_70_0;boost_1_70_0;boost/boost-1_70_0;boost/boost_1_70_0;boost-1_70;boost_1_70;boost/boost-1_70;boost/boost_1_70;boost-1_69_0;boost_1_69_0;boost/boost-1_69_0;boost/boost_1_69_0;boost-1_69;boost_1_69;boost/boost-1_69;boost/boost_1_69;boost-1_68_0;boost_1_68_0;boost/boost-1_68_0;boost/boost_1_68_0;boost-1_68;boost_1_68;boost/boost-1_68;boost/boost_1_68;boost-1_67_0;boost_1_67_0;boost/boost-1_67_0;boost/boost_1_67_0;boost-1_67;boost_1_67;boost/boost-1_67;boost/boost_1_67;boost-1_66_0;boost_1_66_0;boost/boost-1_66_0;boost/boost_1_66_0;boost-1_66;boost_1_66;boost/boost-1_66;boost/boost_1_66;boost-1_65_1;boost_1_65_1;boost/boost-1_65_1;boost/boost_1_65_1;boost-1_65_0;boost_1_65_0;boost/boost-1_65_0;boost/boost_1_65_0;boost-1_65;boost_1_65;boost/boost-1_65;boost/boost_1_65;boost-1_64_0;boost_1_64_0;boost/boost-1_64_0;boost/boost_1_64_0;boost-1_64;boost_1_64;boost/boost-1_64;boost/boost_1_64"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1691 ] Boost_LIB_PREFIX = ""
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1692 ] Boost_NAMESPACE = "boost"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:801 ] _boost_COMPILER = "-clang90" (guessed)
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1728 ] _boost_MULTITHREADED = "-mt"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1805 ] _boost_ARCHITECTURE_TAG = "" (detected)
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1809 ] _boost_RELEASE_ABI_TAG = "-"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1810 ] _boost_DEBUG_ABI_TAG = "-d"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1870 ] _boost_LIBRARY_SEARCH_DIRS_RELEASE = "/opt/homebrew/Cellar/boost/1.78.0_1/lib;/opt/homebrew/Cellar/boost/1.78.0_1/lib;/opt/homebrew/Cellar/boost/1.78.0_1/stage/lib;Boost_INCLUDE_DIR-NOTFOUND/lib;Boost_INCLUDE_DIR-NOTFOUND/../lib;Boost_INCLUDE_DIR-NOTFOUND/stage/lib;PATHS;C:/boost/lib;C:/boost;/sw/local/lib"
    -- [ /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindBoost.cmake:1871 ] _boost_LIBRARY_SEARCH_DIRS_DEBUG = "/opt/homebrew/Cellar/boost/1.78.0_1/lib;/opt/homebrew/Cellar/boost/1.78.0_1/lib;/opt/homebrew/Cellar/boost/1.78.0_1/stage/lib;Boost_INCLUDE_DIR-NOTFOUND/lib;Boost_INCLUDE_DIR-NOTFOUND/../lib;Boost_INCLUDE_DIR-NOTFOUND/stage/lib;PATHS;C:/boost/lib;C:/boost;/sw/local/lib"
    -- Configuring incomplete, errors occurred!
    See also "/Users/vmangal/AndroidStudioProjects/MyApplication2/app/.cxx/Debug/3l1l4u19/x86/CMakeFiles/CMakeOutput.log".
    
    CMake Error at /Users/vmangal/Library/Android/sdk/cmake/3.18.1/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
      Could NOT find Boost (missing: Boost_INCLUDE_DIR) (Required is at least
      version "1.64.0")

I searched on internet for solutions after referring them I added BOOST_ROOT, BOOST_INCLUDEDIR, BOOST_LIBRARYDIR in arguments but still CMake is not able to find it.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source