trying to build a cpp-common package
https://github.com/ros/roscpp_core
crashes with an error
Maximum recursion depth of 1000 exceeded
-- Using CATKIN_SKIP_TESTING: ON (implying CATKIN_ENABLE_TESTING=OFF)
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: E:/tools/vcpkg/buildtrees/ros-cpp-common/x64-windows-rel/test_results
-- Found gmock: gmock and gtests will be built
CMake Error at E:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake:247 (_add_library):
Maximum recursion depth of 1000 exceeded
Call Stack (most recent call first):
E:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake:247 (_add_library)
delete this function, assembly is successful
What could be the reason?
add parameter, unsuccessful
https://cmake.org/cmake/help/latest/variable/CMAKE_MAXIMUM_RECURSION_DEPTH.html
if(NOT CMAKE_MAXIMUM_RECURSION_DEPTH)
set(CMAKE_MAXIMUM_RECURSION_DEPTH 3000)
endif()
@Voskrese, since it required package 'CATKIN' which doesn't support in vcpkg, could you provide the repro steps, portfile.cmake and CMakeLists.txt file could help us address this issue.
Seems like somebody tried to overwrite add_library and then loaded the vcpkg toolchain.
Yeah catkin overwrites add_library
@PhoebeHui
CMakeLists - cpp_common
https://github.com/ros/roscpp_core/blob/kinetic-devel/cpp_common/CMakeLists.txt
catkin
https://github.com/ros/catkin/tree/kinetic-devel/cmake
pre-install cmake files
catkin.zip
Note that @lennonwoo has been working on a GSoC project about bringing the ROS packages (including roscpp_core, I guess) to vcpkg. A recap of his work is available at https://lennonwoo.github.io/2019/08/20/Support-creating-Windows-packages-for-ROS2-in-Bloom-in-GSoC-2019/ .
Sorry for the noise, actually @lennonwoo actually worked on bringing ROS2 packages to vcpkg, that do not use catkin.
Yesterday evening I collected about 40 ports, from ROS
I did not meet any special problems, everything is going successfully, except for one
https://github.com/ros/roscpp_core/tree/kinetic-devel/rostime
VCKPG + Cmake + Ninja + Python3\3.7 //Windows x64
No Chocolate
Actually my previous comment was wrong, as the GSoC project was on bringing ROS2 packages on vcpkg, not ROS(1) packages, sorry for the noise.
@Neumann-A
Yeah catkin overwrites add_library
If guilty catkin
Close
Facing similar error while trying to configure deal.ii project using vcpkg(deal.ii dependce on Boost which is installed under vcpkg):
...
Include C:/Users/ofcra/Source/dealii/cmake/checks/check_03_compiler_bugs.cmake
Include C:/Users/ofcra/Source/dealii/cmake/configure/configure_1_cuda.cmake
DEAL_II_WITH_CUDA is set to off.
Include C:/Users/ofcra/Source/dealii/cmake/configure/configure_1_lapack.cmake
CMake Error at cmake/macros/macro_find_package.cmake:23 (STRING):
Maximum recursion depth of 1000 exceeded
Call Stack (most recent call first):
cmake/macros/macro_find_package.cmake:27 (_FIND_PACKAGE)
cmake/macros/macro_find_package.cmake:27 (_FIND_PACKAGE)
cmake/macros/macro_find_package.cmake:27 (_FIND_PACKAGE)
...
C:/Users/ofcra/Source/vcpkg/scripts/buildsystems/vcpkg.cmake:263 (_find_package)
cmake/configure/configure_1_lapack.cmake:22 (FIND_PACKAGE)
C:/Users/ofcra/builds/dealii/CMakeFiles/CMakeTmp/evaluate_expression.tmp:1 (FEATURE_LAPACK_FIND_EXTERNAL)
cmake/macros/macro_evaluate_expression.cmake:30 (INCLUDE)
cmake/macros/macro_configure_feature.cmake:237 (EVALUATE_EXPRESSION)
cmake/configure/configure_1_lapack.cmake:116 (CONFIGURE_FEATURE)
cmake/macros/macro_verbose_include.cmake:19 (INCLUDE)
CMakeLists.txt:124 (VERBOSE_INCLUDE)
....
Most helpful comment
Yeah catkin overwrites add_library