'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 |
|---|
