[WIP] Catkin build 2
Depends on !86 (closed) .
[WIP] - To be tested by others.
Enable use of catkin build (catkin_tools
).
It allows for a much simpler setup of the required workspace for development in wolf - see update in README.md -.
However the former compilation flow should still work. Well up to cd347095ef0dd040a706f04818f889ee4f6d80fb I guess.
Merge request reports
Activity
Added 11 commits:
- b92d2ae3 - move Findwolf to cmake_modules
- 6db7341e - add FindEigen
- 8b5fa380 - add package.xml -> catkin build
- 545625e2 - add wolfConfig.cmake adapted from Ceres. Export wolf install-targets to enable find_package(wolf)
- bd8ef66a - comment custom install path
- f446505b - proper CMAKE_MODULE_PATH & missing Eigen 3 deps
- 80f99226 - looks like a missing header
- ad077068 - export install targets
- d9aac59d - One shouldnt install directly in the CMAKE_ROOT/Modules folder has those module …
- da157d3b - install wolfConfig.cmake & export project
- a93fd918 - update readme catkin_tools
Toggle commit listTrying this out. Issues: The README.md file might have errors or outdated info:
- Step 2: create mkdir -p wolf_ws/src --> remove 'create'
- Steps 3, 4: Using github/artivis here is correct?
- Steps 3, 4: should we launch this from the directory wolf_ws/src? This is what I did
- Step 5: should we launch this from the directory wolf_ws/src? This is what I did
- Step 6: error:
[build] Error: Unable to find source space `/home/jsola/dev/wolf_ws/src/src`
Update: Trying Step 6 from wolf_ws seems to work, but not fully:
jsola@encantats:~/dev/wolf_ws$ catkin build ------------------------------------------------------------------------- Profile: default Extending: [env] /home/jsola/dev/ros_ws/devel:/opt/ros/indigo Workspace: /home/jsola/dev/wolf_ws ------------------------------------------------------------------------- Source Space: [exists] /home/jsola/dev/wolf_ws/src Log Space: [missing] /home/jsola/dev/wolf_ws/logs Build Space: [exists] /home/jsola/dev/wolf_ws/build Devel Space: [exists] /home/jsola/dev/wolf_ws/devel Install Space: [unused] /home/jsola/dev/wolf_ws/install DESTDIR: [unused] None ------------------------------------------------------------------------- Devel Space Layout: linked Install Space Layout: None ------------------------------------------------------------------------- Additional CMake Args: None Additional Make Args: None Additional catkin Make Args: None Internal Make Job Server: True Cache Job Environments: False ------------------------------------------------------------------------- Whitelisted Packages: None Blacklisted Packages: None ------------------------------------------------------------------------- Workspace configuration appears valid. NOTE: Forcing CMake to run for each package. ------------------------------------------------------------------------- [build] Found '3' packages in 0.0 seconds. [build] Updating package table. Starting >>> catkin_tools_prebuild Finished <<< catkin_tools_prebuild [ 0.9 seconds ] Starting >>> Ceres Starting >>> wolf_ros ________________________________________________________________________________________________________________________ Warnings << wolf_ros:cmake /home/jsola/dev/wolf_ws/logs/wolf_ros/build.cmake.000.log Found wolf include dirs: /usr/local/include/iri-algorithms wolf_INCLUDE_DIRS: /usr/local/include/iri-algorithms laser_scan_utils_INCLUDE_DIRS: /usr/local/include/iri-algorithms cd /home/jsola/dev/wolf_ws/build/wolf_ros; catkin build --get-env wolf_ros | catkin env -si /usr/bin/cmake /home/jsola/dev/wolf_ws/src/Wolf_ros --no-warn-unused-cli -DCATKIN_DEVEL_PREFIX=/home/jsola/dev/wolf_ws/devel/.private/wolf_ros -DCMAKE_INSTALL_PREFIX=/home/jsola/dev/wolf_ws/install; cd - ........................................................................................................................ ________________________________________________________________________________________________________________________ Warnings << Ceres:cmake /home/jsola/dev/wolf_ws/logs/Ceres/build.cmake.000.log -- Found Eigen version 3.2.0: /usr/include/eigen3 =============================================================== Disabling the use of Eigen as a sparse linear algebra library. This does not affect the covariance estimation algorithm which can still use the EIGEN_SPARSE_QR algorithm. =============================================================== -- Found LAPACK library: /usr/lib/liblapack.so;/usr/lib/libblas.so -- Found BLAS library: /usr/lib/libblas.so -- Found SuiteSparse 4.2.1, building with SuiteSparse. -- Failed to find CXSparse - Could not find CXSparse include directory, set CXSPARSE_INCLUDE_DIR to directory containing cs.h -- Did not find CXSparse, Building without CXSparse. -- Google Flags disabled; no tests or tools will be built! -- Compiling minimal glog substitute into Ceres. -- Using minimal glog substitute (include): internal/ceres/miniglog -- Building with OpenMP. -- Found tr1/unordered_map/set in std::tr1 namespace. -- Found shared_ptr in std::tr1 namespace using <tr1/memory> header. -- Building Ceres as a static library. -- No build type specified; defaulting to CMAKE_BUILD_TYPE=Release. -- Build the examples. cd /home/jsola/dev/wolf_ws/build/Ceres; catkin build --get-env Ceres | catkin env -si /usr/bin/cmake /home/jsola/dev/wolf_ws/src/ceres_solver --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX=/home/jsola/dev/wolf_ws/devel; cd - ........................................................................................................................ ________________________________________________________________________________________________________________________ Errors << wolf_ros:make /home/jsola/dev/wolf_ws/logs/wolf_ros/build.make.000.log In file included from /home/jsola/dev/wolf_ws/src/Wolf_ros/src/wolf_main.cpp:5:0: /home/jsola/dev/wolf_ws/src/Wolf_ros/include/wolf_node.h:31:52: fatal error: wolf/processor_tracker_landmark_corner.h: No such file or directory #include "wolf/processor_tracker_landmark_corner.h" ^ compilation terminated. In file included from /home/jsola/dev/wolf_ws/src/Wolf_ros/src/wolf_node.cpp:5:0: /home/jsola/dev/wolf_ws/src/Wolf_ros/include/wolf_node.h:31:52: fatal error: wolf/processor_tracker_landmark_corner.h: No such file or directory #include "wolf/processor_tracker_landmark_corner.h" ^ compilation terminated. make[2]: *** [CMakeFiles/wolf_ros.dir/src/wolf_main.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** [CMakeFiles/wolf_ros.dir/src/wolf_node.cpp.o] Error 1 make[1]: *** [CMakeFiles/wolf_ros.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... In file included from /usr/local/include/iri-algorithms/wolf/ceres_wrapper/ceres_manager.h:11:0, from /home/jsola/dev/wolf_ws/src/Wolf_ros/src/wolf_prunning_test.cpp:22: /usr/local/include/iri-algorithms/wolf/ceres_wrapper/local_parametrization_wrapper.h:36:40: fatal error: local_parametrization_base.h: No such file or directory #include "local_parametrization_base.h" ^ compilation terminated. make[2]: *** [CMakeFiles/wolf_prunning.dir/src/wolf_prunning_test.cpp.o] Error 1 make[1]: *** [CMakeFiles/wolf_prunning.dir/all] Error 2 make: *** [all] Error 2 cd /home/jsola/dev/wolf_ws/build/wolf_ros; catkin build --get-env wolf_ros | catkin env -si /usr/bin/make --jobserver-fds=6,7 -j; cd - ........................................................................................................................ Failed << wolf_ros:make [ Exited with code 2 ] Failed <<< wolf_ros [ 7.8 seconds ] Abandoned <<< wolf [ Unrelated job failed ] Finished <<< Ceres [ 46.8 seconds ] [build] Summary: 2 of 4 packages succeeded. [build] Ignored: None. [build] Warnings: 2 packages succeeded with warnings. [build] Abandoned: 1 packages were abandoned. [build] Failed: 1 packages failed. [build] Runtime: 47.9 seconds total. [build] Note: Workspace packages have changed, please re-source setup files to use them. jsola@encantats:~/dev/wolf_ws$
Edited by Joan Solà Ortega@jsola I didn't try to compile
wolf_ros
in this tuto. It seems that it is part of what's failing from your post.Moreover the
/usr/local/include/iri-algorithms/wolf/ceres_wrapper/local_parametrization_wrapper.h:36:40: fatal error: local_parametrization_base.h: No such file or directory #include "local_parametrization_base.h"
is supposed to be fixed in c8bb729e