Comments (5)
If I try and keep on going through with the instructions I see that there is an install
directory in the main folder. This is its structure:
├── cereal
├── Ceres
├── Eigen3
│ ├── include
│ └── share
├── glog
│ ├── include
│ └── lib
├── googletest
│ ├── include
│ └── lib
├── nanoflann
├── superbuild_import.cmake
├── tessil
└── yaml-cpp
But when I try and run the commands:
mkdir cmake-build-release && cd cmake-build-release
cmake .. -DCMAKE_BUILD_TYPE=Release
I get the error:
CMake Error at install/superbuild_import.cmake:35 (find_package):
Could not find a package configuration file provided by "Ceres" with any of
the following names:
CeresConfig.cmake
ceres-config.cmake
Add the installation prefix of "Ceres" to CMAKE_PREFIX_PATH or set
"Ceres_DIR" to a directory containing one of the above files. If "Ceres"
provides a separate development package or SDK, be sure it has been
installed.
Call Stack (most recent call first):
install/superbuild_import.cmake:82 (SLAM_DEFAULT_FIND_PACKAGE)
cmake/superbuild_utils.cmake:27 (include)
CMakeLists.txt:49 (SLAM_INCLUDE_SUPERBUILD)
Which makes sense considering the error I described in my previous comment.
from ct_icp.
I believe it may be useful to show how cmake was configuring everything to compile ceres:
[ 48%] Performing configure step for 'Ceres'
-- The C compiler identification is GNU 11.1.0
-- The CXX compiler identification is GNU 11.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/lib/ccache/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/lib/ccache/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detected Ceres being used as a git submodule, adding commit hook for Gerrit to: /home/MyUserName/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild-build/Ceres/src/Ceres/.git
-- Detected Ceres version: 2.0.0 from /home/MyUserName/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild-build/Ceres/src/Ceres/include/ceres/version.h
-- Detected available Ceres threading models: [CXX_THREADS, OPENMP, NO_THREADS]
-- Building with C++17
-- Found Eigen version 3.3.7: /home/MyUserName/ct_icp/install/Eigen3/include/eigen3
-- Enabling use of Eigen as a sparse linear algebra library.
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found LAPACK library: /usr/lib/x86_64-linux-gnu/liblapack.so;/usr/lib/x86_64-linux-gnu/libblas.so;/usr/lib/x86_64-linux-gnu/libf77blas.so;/usr/lib/x86_64-linux-gnu/libatlas.so
-- Found AMD headers in: /usr/include/suitesparse
-- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so
-- Found CAMD headers in: /usr/include/suitesparse
-- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so
-- Found COLAMD headers in: /usr/include/suitesparse
-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so
-- Found CCOLAMD headers in: /usr/include/suitesparse
-- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so
-- Found CHOLMOD headers in: /usr/include/suitesparse
-- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so
-- Found SUITESPARSEQR headers in: /usr/include/suitesparse
-- Found SUITESPARSEQR library: /usr/lib/x86_64-linux-gnu/libspqr.so
-- Found Intel Thread Building Blocks (TBB) library (2020.1 / 11101) include location: . Assuming SuiteSparseQR was compiled with TBB.
-- Found SUITESPARSE_CONFIG headers in: /usr/include/suitesparse
-- Found SUITESPARSE_CONFIG library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so
-- Found LIBRT library: /usr/lib/x86_64-linux-gnu/librt.so
-- Adding librt: /usr/lib/x86_64-linux-gnu/librt.so to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing).
-- Did not find METIS library (optional SuiteSparse dependency)
-- Found SuiteSparse: TRUE (found version "5.7.1")
-- Found SuiteSparse 5.7.1, building with SuiteSparse.
-- Found CXSparse: /usr/include/suitesparse (found version "3.2.0")
-- Found CXSparse version: 3.2.0, building with CXSparse.
-- Building without Apple's Accelerate sparse support.
-- Found Google Flags (gflags) version 2.2.2: /usr/lib/x86_64-linux-gnu/cmake/gflags
-- No preference for use of exported glog CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported glog CMake configuration if available.
-- Failed to find installed glog CMake configuration, searching for glog build directories exported with CMake.
-- Found exported glog build directory: /home/MyUserName/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild-build/glog/src/glog-build
-- Detected glog version: 0.5.0
-- Found Glog: glog::glog
-- Found Google Log (glog). Assuming glog was built with gflags support as gflags was found. This will make gflags a public dependency of Ceres.
-- Using Ceres threading model: CXX_THREADS
-- Found Google benchmark library. Building Ceres benchmarks.
-- Building Ceres as a shared library.
-- Performing Test CHECK_CXX_FLAG_Wmissing_declarations
-- Performing Test CHECK_CXX_FLAG_Wmissing_declarations - Success
-- Performing Test CHECK_CXX_FLAG_Wno_unknown_pragmas
-- Performing Test CHECK_CXX_FLAG_Wno_unknown_pragmas - Success
-- Performing Test CHECK_CXX_FLAG_Wno_sign_compare
-- Performing Test CHECK_CXX_FLAG_Wno_sign_compare - Success
-- Performing Test CHECK_CXX_FLAG_Wno_unused_parameter
-- Performing Test CHECK_CXX_FLAG_Wno_unused_parameter - Success
-- Performing Test CHECK_CXX_FLAG_Wno_missing_field_initializers
-- Performing Test CHECK_CXX_FLAG_Wno_missing_field_initializers - Success
-- Creating configured Ceres config.h output directory: /home/MyUserName/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild-build/Ceres/src/Ceres-build/config/ceres/internal
-- Enabling CERES_USE_EIGEN_SPARSE in Ceres config.h
-- Enabling CERES_NO_ACCELERATE_SPARSE in Ceres config.h
-- Enabling CERES_USE_CXX_THREADS in Ceres config.h
-- Enabling CERES_USING_SHARED_LIBRARY in Ceres config.h
-- Performing Test CHECK_CXX_FLAG_Wno_missing_declarations
-- Performing Test CHECK_CXX_FLAG_Wno_missing_declarations - Success
-- Do not build any example.
-- Configuring done (3.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/MyUserName/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild-build/Ceres/src/Ceres-build
Maybe someone can pinpoint the bug
from ct_icp.
Hi,
So you seem not to be able to build and install ceres, which is weird, never had this problem before.
My advice would be to :
- first try and install ceres independently on your machine through cmake (see the ceres github repo)
https://github.com/ceres-solver/ceres-solver
- If it succeeds, that is weird, but quite indicative and you can probably use the ceres version instead of the superbuild (I'll guide you through the cmake if need be)
- If it fails, try a different ceres branch ?
Let me know,
Cheers
from ct_icp.
Hi! In the end, I managed to solve the problem by changing the ceres version from 2.0.0 to 2.1.0 in the CMakeList.txt file ~/ct_icp/.cmake-build-superbuild/MappingResearchKEU_superbuild/src/MappingResearchKEU_superbuild\CMakeLists.txt
Line 137.
My best guess is that having already installed ceres 2.1.0 previously messed something up in the linker part of the compilation. Either that or there are some incompatibilities between the compiler itself and ceres 2.0.0 which I find not that likely.
Before closing the issue I will try also to build the ROS portion of the repo. In the meantime, I kindly ask you to leave the issue open.
from ct_icp.
OK, I was finally able to build the project with ROS. the key takeaway points are that it's best to use the same ceres version you may have previously used and always remember to source the ros workspace before compiling.
from ct_icp.
Related Issues (20)
- Run ct_icp on Darpa tunnel circuit datasets HOT 2
- Parameters meaning HOT 2
- Run ct_icp on Jetson Nano HOT 3
- How to run with pyLiDAR-SLAM on KITTI-corrected? HOT 12
- How GTSAM is used? HOT 2
- Modify superbuild ceres version HOT 2
- Tune slam output velocity
- Debian/testing: build OK
- Choice of interpolation method for the time continuous representation. HOT 1
- Build with ROS option
- Mismatching data field in code and config files
- Issues during catkin_make (Step 3) HOT 2
- An error occurred while compiling: /usr/bin/ld HOT 2
- Build fails on debian HOT 1
- Fail to copy libglog during superbuild HOT 4
- ct_icp no timestamps HOT 3
- Running CT-ICP with other Datasets on ROS HOT 2
- Trajectory Location and Replicating Kitti Raw Results HOT 2
- How to obtain the relative timestamps? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ct_icp.