SimpleAmqpClient
SimpleAmqpClient copied to clipboard
Building SimpleAmqpClient on Windows 10, 64-bit
Hi there. When trying to use cmake on Windows 10 I get the following:
PS C:\Users\ac026878\SimpleAmqpClient\build> cmake .. -- Selecting Windows SDK version to target Windows 10.0.16299. CMake Warning at C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:577 (message): Imported targets and dependency information not available for Boost version (all versions older than 1.33) Call Stack (most recent call first): C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:963 (_Boost_COMPONENT_DEPENDENCIES) C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1622 (_Boost_MISSING_DEPENDENCIES) CMakeLists.txt:35 (FIND_PACKAGE)
CMake Warning at C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:577 (message): Imported targets and dependency information not available for Boost version (all versions older than 1.33) Call Stack (most recent call first): C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:963 (_Boost_COMPONENT_DEPENDENCIES) C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1622 (_Boost_MISSING_DEPENDENCIES) CMakeLists.txt:35 (FIND_PACKAGE)
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:2048 (message): Unable to find the requested Boost libraries.
Unable to find the Boost header files. Please set BOOST_ROOT to the root directory containing Boost or BOOST_INCLUDEDIR to the directory containing Boost's headers. Call Stack (most recent call first): CMakeLists.txt:35 (FIND_PACKAGE)
If I set BOOST_ROOT, BOOST_INCLUDEDIR and BOOST_LIBRARYDIR I get the following:
PS C:\Users\ac026878\SimpleAmqpClient\build> cmake -DBOOST_ROOT=C:\boost_1_68_0 -DBOOST_INCLUDEDIR=C:\boost_1_68_0 -DBOOST_LIBRARYDIR=C:\boost_1_68_0\lib ..
-- Selecting Windows SDK version to target Windows 10.0.16299. CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:2048 (message): Unable to find the requested Boost libraries.
Boost version: 1.68.0
Boost include path: C:/boost_1_68_0
Could not find the following Boost libraries:
boost_chrono
boost_system
No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost. Call Stack (most recent call first): CMakeLists.txt:35 (FIND_PACKAGE)
When I turn up the diagnostics for the FindBoost module it gives me the following: PS C:\Users\ac026878\SimpleAmqpClient\build> cmake -DBOOST_ROOT=C:\boost_1_68_0 -DBOOST_INCLUDEDIR=C:\boost_1_68_0 -DBOOST_LIBRARYDIR=C:\boost_1_68_0\l ib -DBoost_DEBUG=ON .. -- Selecting Windows SDK version to target Windows 10.0.16299. -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1125 ] _boost_TEST_VERSIONS = 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;1.63.0;1.63;1.62.0;1.62;1.61.0;1.61;1.60.0;1.60;1.59.0;1.59;1.58.0;1.58;1.57.0;1.57;1.56.0;1.56;1.55.0;1.55;1.54.0;1.54;1.53.0;1.53;1.52.0;1.52;1.51.0;1.51;1.50.0;1.50;1.49.0;1.49;1.48.0;1.48;1.47.0;1.47 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1127 ] Boost_USE_MULTITHREADED = TRUE -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1129 ] Boost_USE_STATIC_LIBS = -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1131 ] Boost_USE_STATIC_RUNTIME = -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1133 ] Boost_ADDITIONAL_VERSIONS = -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1135 ] Boost_NO_SYSTEM_PATHS = -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1203 ] Declared as CMake or Environmental Variables: -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1205 ] BOOST_ROOT = C:\boost_1_68_0 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1207 ] BOOST_INCLUDEDIR = C:\boost_1_68_0 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1209 ] BOOST_LIBRARYDIR = C:\boost_1_68_0\lib -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1211 ] _boost_TEST_VERSIONS = 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;1.63.0;1.63;1.62.0;1.62;1.61.0;1.61;1.60.0;1.60;1.59.0;1.59;1.58.0;1.58;1.57.0;1.57;1.56.0;1.56;1.55.0;1.55;1.54.0;1.54;1.53.0;1.53;1.52.0;1.52;1.51.0;1.51;1.50.0;1.50;1.49.0;1.49;1.48.0;1.48;1.47.0;1.47 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1310 ] location of version.hpp: C:/boost_1_68_0/boost/version.hpp -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1334 ] version.hpp reveals boost 1.68.0 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1420 ] guessed _boost_COMPILER = -vc140 -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1430 ] _boost_MULTITHREADED = -mt -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1506 ] _boost_RELEASE_ABI_TAG = - -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1508 ] _boost_DEBUG_ABI_TAG = -gd -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1571 ] _boost_LIBRARY_SEARCH_DIRS_RELEASE = C:\boost_1_68_0\lib;C:\boost_1_68_0/lib;C:\boost_1_68_0/stage/lib;C:\boost_1_68_0/lib32-msvc-14.0;C:/boost_1_68_0/lib;C:/boost_1_68_0/../lib;C:/boost_1_68_0/stage/lib;C:/boost_1_68_0/../lib32-msvc-14.0;C:/boost_1_68_0/lib32-msvc-14.0;C:/local/boost_1_68_0/lib32-msvc-14.0;C:/local/boost_1_68/lib32-msvc-14.0;C:/local/boost_1_67_0/lib32-msvc-14.0;C:/local/boost_1_67/lib32-msvc-14.0;C:/local/boost_1_66_0/lib32-msvc-14.0;C:/local/boost_1_66/lib32-msvc-14.0;C:/local/boost_1_65_1/lib32-msvc-14.0;C:/local/boost_1_65_0/lib32-msvc-14.0;C:/local/boost_1_65/lib32-msvc-14.0;C:/local/boost_1_64_0/lib32-msvc-14.0;C:/local/boost_1_64/lib32-msvc-14.0;C:/local/boost_1_63_0/lib32-msvc-14.0;C:/local/boost_1_63/lib32-msvc-14.0;C:/local/boost_1_62_0/lib32-msvc-14.0;C:/local/boost_1_62/lib32-msvc-14.0;C:/local/boost_1_61_0/lib32-msvc-14.0;C:/local/boost_1_61/lib32-msvc-14.0;C:/local/boost_1_60_0/lib32-msvc-14.0;C:/local/boost_1_60/lib32-msvc-14.0;C:/local/boost_1_59_0/lib32-msvc-14.0;C:/local/boost_1_59/lib32-msvc-14.0;C:/local/boost_1_58_0/lib32-msvc-14.0;C:/local/boost_1_58/lib32-msvc-14.0;C:/local/boost_1_57_0/lib32-msvc-14.0;C:/local/boost_1_57/lib32-msvc-14.0;C:/local/boost_1_56_0/lib32-msvc-14.0;C:/local/boost_1_56/lib32-msvc-14.0;C:/local/boost_1_55_0/lib32-msvc-14.0;C:/local/boost_1_55/lib32-msvc-14.0;C:/local/boost_1_54_0/lib32-msvc-14.0;C:/local/boost_1_54/lib32-msvc-14.0;C:/local/boost_1_53_0/lib32-msvc-14.0;C:/local/boost_1_53/lib32-msvc-14.0;C:/local/boost_1_52_0/lib32-msvc-14.0;C:/local/boost_1_52/lib32-msvc-14.0;C:/local/boost_1_51_0/lib32-msvc-14.0;C:/local/boost_1_51/lib32-msvc-14.0;C:/local/boost_1_50_0/lib32-msvc-14.0;C:/local/boost_1_50/lib32-msvc-14.0;C:/local/boost_1_49_0/lib32-msvc-14.0;C:/local/boost_1_49/lib32-msvc-14.0;C:/local/boost_1_48_0/lib32-msvc-14.0;C:/local/boost_1_48/lib32-msvc-14.0;C:/local/boost_1_47_0/lib32-msvc-14.0;C:/local/boost_1_47/lib32-msvc-14.0;C:/local/boost_1_46_1/lib32-msvc-14.0;C:/local/boost_1_46_0/lib32-msvc-14.0;C:/local/boost_1_46/lib32-msvc-14.0;C:/local/boost_1_45_0/lib32-msvc-14.0;C:/local/boost_1_45/lib32-msvc-14.0;C:/local/boost_1_44_0/lib32-msvc-14.0;C:/local/boost_1_44/lib32-msvc-14.0;C:/local/boost_1_43_0/lib32-msvc-14.0;C:/local/boost_1_43/lib32-msvc-14.0;C:/local/boost_1_42_0/lib32-msvc-14.0;C:/local/boost_1_42/lib32-msvc-14.0;C:/local/boost_1_41_0/lib32-msvc-14.0;C:/local/boost_1_41/lib32-msvc-14.0;C:/local/boost_1_40_0/lib32-msvc-14.0;C:/local/boost_1_40/lib32-msvc-14.0;C:/local/boost_1_39_0/lib32-msvc-14.0;C:/local/boost_1_39/lib32-msvc-14.0;C:/local/boost_1_38_0/lib32-msvc-14.0;C:/local/boost_1_38/lib32-msvc-14.0;C:/local/boost_1_37_0/lib32-msvc-14.0;C:/local/boost_1_37/lib32-msvc-14.0;C:/local/boost_1_36_1/lib32-msvc-14.0;C:/local/boost_1_36_0/lib32-msvc-14.0;C:/local/boost_1_36/lib32-msvc-14.0;C:/local/boost_1_35_1/lib32-msvc-14.0;C:/local/boost_1_35_0/lib32-msvc-14.0;C:/local/boost_1_35/lib32-msvc-14.0;C:/local/boost_1_34_1/lib32-msvc-14.0;C:/local/boost_1_34_0/lib32-msvc-14.0;C:/local/boost_1_34/lib32-msvc-14.0;C:/local/boost_1_33_1/lib32-msvc-14.0;C:/local/boost_1_33_0/lib32-msvc-14.0;C:/local/boost_1_33/lib32-msvc-14.0;C:/boost/lib32-msvc-14.0;PATHS;C:/boost/lib;C:/boost;/sw/local/lib_boost_LIBRARY_SEARCH_DIRS_DEBUG = C:\boost_1_68_0\lib;C:\boost_1_68_0/lib;C:\boost_1_68_0/stage/lib;C:\boost_1_68_0/lib32-msvc-14.0;C:/boost_1_68_0/lib;C:/boost_1_68_0/../lib;C:/boost_1_68_0/stage/lib;C:/boost_1_68_0/../lib32-msvc-14.0;C:/boost_1_68_0/lib32-msvc-14.0;C:/local/boost_1_68_0/lib32-msvc-14.0;C:/local/boost_1_68/lib32-msvc-14.0;C:/local/boost_1_67_0/lib32-msvc-14.0;C:/local/boost_1_67/lib32-msvc-14.0;C:/local/boost_1_66_0/lib32-msvc-14.0;C:/local/boost_1_66/lib32-msvc-14.0;C:/local/boost_1_65_1/lib32-msvc-14.0;C:/local/boost_1_65_0/lib32-msvc-14.0;C:/local/boost_1_65/lib32-msvc-14.0;C:/local/boost_1_64_0/lib32-msvc-14.0;C:/local/boost_1_64/lib32-msvc-14.0;C:/local/boost_1_63_0/lib32-msvc-14.0;C:/local/boost_1_63/lib32-msvc-14.0;C:/local/boost_1_62_0/lib32-msvc-14.0;C:/local/boost_1_62/lib32-msvc-14.0;C:/local/boost_1_61_0/lib32-msvc-14.0;C:/local/boost_1_61/lib32-msvc-14.0;C:/local/boost_1_60_0/lib32-msvc-14.0;C:/local/boost_1_60/lib32-msvc-14.0;C:/local/boost_1_59_0/lib32-msvc-14.0;C:/local/boost_1_59/lib32-msvc-14.0;C:/local/boost_1_58_0/lib32-msvc-14.0;C:/local/boost_1_58/lib32-msvc-14.0;C:/local/boost_1_57_0/lib32-msvc-14.0;C:/local/boost_1_57/lib32-msvc-14.0;C:/local/boost_1_56_0/lib32-msvc-14.0;C:/local/boost_1_56/lib32-msvc-14.0;C:/local/boost_1_55_0/lib32-msvc-14.0;C:/local/boost_1_55/lib32-msvc-14.0;C:/local/boost_1_54_0/lib32-msvc-14.0;C:/local/boost_1_54/lib32-msvc-14.0;C:/local/boost_1_53_0/lib32-msvc-14.0;C:/local/boost_1_53/lib32-msvc-14.0;C:/local/boost_1_52_0/lib32-msvc-14.0;C:/local/boost_1_52/lib32-msvc-14.0;C:/local/boost_1_51_0/lib32-msvc-14.0;C:/local/boost_1_51/lib32-msvc-14.0;C:/local/boost_1_50_0/lib32-msvc-14.0;C:/local/boost_1_50/lib32-msvc-14.0;C:/local/boost_1_49_0/lib32-msvc-14.0;C:/local/boost_1_49/lib32-msvc-14.0;C:/local/boost_1_48_0/lib32-msvc-14.0;C:/local/boost_1_48/lib32-msvc-14.0;C:/local/boost_1_47_0/lib32-msvc-14.0;C:/local/boost_1_47/lib32-msvc-14.0;C:/local/boost_1_46_1/lib32-msvc-14.0;C:/local/boost_1_46_0/lib32-msvc-14.0;C:/local/boost_1_46/lib32-msvc-14.0;C:/local/boost_1_45_0/lib32-msvc-14.0;C:/local/boost_1_45/lib32-msvc-14.0;C:/local/boost_1_44_0/lib32-msvc-14.0;C:/local/boost_1_44/lib32-msvc-14.0;C:/local/boost_1_43_0/lib32-msvc-14.0;C:/local/boost_1_43/lib32-msvc-14.0;C:/local/boost_1_42_0/lib32-msvc-14.0;C:/local/boost_1_42/lib32-msvc-14.0;C:/local/boost_1_41_0/lib32-msvc-14.0;C:/local/boost_1_41/lib32-msvc-14.0;C:/local/boost_1_40_0/lib32-msvc-14.0;C:/local/boost_1_40/lib32-msvc-14.0;C:/local/boost_1_39_0/lib32-msvc-14.0;C:/local/boost_1_39/lib32-msvc-14.0;C:/local/boost_1_38_0/lib32-msvc-14.0;C:/local/boost_1_38/lib32-msvc-14.0;C:/local/boost_1_37_0/lib32-msvc-14.0;C:/local/boost_1_37/lib32-msvc-14.0;C:/local/boost_1_36_1/lib32-msvc-14.0;C:/local/boost_1_36_0/lib32-msvc-14.0;C:/local/boost_1_36/lib32-msvc-14.0;C:/local/boost_1_35_1/lib32-msvc-14.0;C:/local/boost_1_35_0/lib32-msvc-14.0;C:/local/boost_1_35/lib32-msvc-14.0;C:/local/boost_1_34_1/lib32-msvc-14.0;C:/local/boost_1_34_0/lib32-msvc-14.0;C:/local/boost_1_34/lib32-msvc-14.0;C:/local/boost_1_33_1/lib32-msvc-14.0;C:/local/boost_1_33_0/lib32-msvc-14.0;C:/local/boost_1_33/lib32-msvc-14.0;C:/boost/lib32-msvc-14.0;PATHS;C:/boost/lib;C:/boost;/sw/local/lib -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1760 ] Searching for CHRONO_LIBRARY_RELEASE: boost_chrono-vc140-mt-x32-1_68;boost_chrono-vc140-mt;boost_chrono-mt-x32-1_68;boost_chrono-mt;boost_chrono -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1813 ] Searching for CHRONO_LIBRARY_DEBUG: boost_chrono-vc140-mt-gd-x32-1_68;boost_chrono-vc140-mt-gd;boost_chrono-mt-gd-x32-1_68;boost_chrono-mt-gd;boost_chrono-mt;boost_chrono -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1760 ] Searching for SYSTEM_LIBRARY_RELEASE: boost_system-vc140-mt-x32-1_68;boost_system-vc140-mt;boost_system-mt-x32-1_68;boost_system-mt;boost_system -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1813 ] Searching for SYSTEM_LIBRARY_DEBUG: boost_system-vc140-mt-gd-x32-1_68;boost_system-vc140-mt-gd;boost_system-mt-gd-x32-1_68;boost_system-mt-gd;boost_system-mt;boost_system -- [ C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1887 ] Boost_FOUND = 1 CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.12/Modules/FindBoost.cmake:2048 (message): Unable to find the requested Boost libraries.
Boost version: 1.68.0
Boost include path: C:/boost_1_68_0
Could not find the following Boost libraries:
boost_chrono
boost_system
No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost. Call Stack (most recent call first): CMakeLists.txt:35 (FIND_PACKAGE)
For some reason it looks like Cmake is trying to pull in 32-bit boost libraries instead of the 64-bit ones that are installed (boost_system-vc140-mt-x64-1_68.lib, boost_chrono-vc140-mt-x64-1_68.lib). Does the CMakeLists.txt need to be updated to handle this? I was successful in building SimpleAmqpClient by creating a Visual Studio project file that points to the source/headers but upon linking it I get a bunch of unresolved symbols that should be in the SimpleAmqpClient static library. I was hoping if I could get the CMake to run successfully all those unresolved symbols errors would be corrected.
Try using CMAKE GUI, and give the file paths for boost libraries in the GUI and then configure.It worked for me.
@aciaccio and for which platform do you have libraries in C:\boost_1_68_0\lib? It should contain one version, either x64 or win32. Btw. you boost include directory looks wrong - it should point to the 'include' folder in boost directory.
x64. I've tried a number of combinations, with and without specifying the include directory. @swatinair123 recommended using the CMAKE GUI, which I have not yet tried. In any case that should not matter, the CLI should work fine.
@aciaccio I see you're using boost 1.68.0 - have you tried to modify CMakeLists.txt, line 35 accordingly before using cmake?
FIND_PACKAGE(Boost 1.47.0 COMPONENTS chrono system REQUIRED)
# change to:
FIND_PACKAGE(Boost 1.68.0 COMPONENTS chrono system REQUIRED)
Could not find the following Boost libraries:
boost_chrono boost_system
Had same errors with latest Boost version - 1.69. Fixed by adding option Boost_USE_STATIC_LIBS=ON
Hi ,When trying to use cmake on Windows 10 I get the following :
CMake Error at D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message): Could NOT find Boost (missing: chrono system) (found suitable version "1.69.0", minimum required is "1.69.0") Call Stack (most recent call first): D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:473 (_FPHSA_FAILURE_MESSAGE) D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindBoost.cmake:2184 (find_package_handle_standard_args) CMakeLists.txt:63 (find_package)
but i have already compiled boost 1_69_0 and install Lib in F:\boost_1_69_0\czz_install\lib

i compiled with boost 1.69.0 with commands below: build.bat gcc (i want to use mingw to dealed it ,but not supported ) .\bjam --toolset=gcc --with-system --with-chrono --with-timer --prefix=F:\boost_1_69_0\czz_install install
and get below:

so I try to modify the CMakeLists.txt to fix the problem:

then i trying to use cmake command again: but i still got below:
CMake Error at D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message): Could NOT find Boost (missing: chrono system) (found suitable version "1.69.0", minimum required is "1.69.0") Call Stack (most recent call first): D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:473 (_FPHSA_FAILURE_MESSAGE) D:/cmake-3.18.4-win64-x64/share/cmake-3.18/Modules/FindBoost.cmake:2184 (find_package_handle_standard_args) CMakeLists.txt:63 (find_package)
At last, i have to review the FindBoost.cmake And FindPackageHandleStandardArgs.cmake to see what happened.
i found it's Boost_chrono_FOUND Boost_system_FOUND Not be set to true that cause the error how counld this happened ,i have already include the header file path and the libpath........
i don't know why ,can you help me....
i want to build all the things below MinGW , have you ever tried?