mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 01:20:25 +08:00
Adding OpenGV as submodule (optional) and use Github actions for windows CI (#1656)
* Adding OpenGV as submodule (optional) * Remove submodule to migrate to FetchContent * using FetchContent * remove empty .gitmodules * Fixing OpenGV not able to find eigen on windows * patching opengv to adjust -march=native based on PCL * fixing patching on windows * eigen fix * PR cancel on-going CI builds if new commit is added to PR * try another approach * updating patch with some logs * more debug mesage * fixing EIGEN_INCLUDE_DIR * enable rolling_builds on appveyor * removed rolling_builds appveyor * fixing eigen cache * test * more debug logs * another try * cleanup * updated appveyor to work with fetchcontent * removed mkdir build (appveyor) * appveyor: trying ninja to increase CI speed * removed mkdr * appveyor: spitting opengv and rtabmap builds to be under 60 min per job * appveyor: caching dependencies * using global configuration * using baked image * fixing wget in ps * fixing not support for * pip error * reverted pip install * fixed realsense cache * fixing multi step build * removing baked image * typo * Windows: Converted appveyor to github actions * updated boost version * fixing boost * udpated boost config * boost... * platform_version * install boost directly * silent boost install * very silent boost * fixing ls * added boost install dir * showing boost install dir * moved windows dependencies in external action file * explicitly save boost cache to same time on iterations * pip install gdown * update * caching more deps * caching all depts * removed explicit boost cache save * mscv 14.0 * forcing building visual studio 14 2015 * installing v12 in 2022 instead * setup cmd prompt * init right toolset * fixing system version for opengv compilation error * fixing package and artifact * CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION * removing cmd * find manually psapi.lib * resolve * refactor psapi env * forcing 10.0.19041.0 * using windows=2022 runner instead * added vcpkg * commenting windows-latest for now * trying vcpkg instead * search path * updated path * moved json * removed deleted file for git * adding a real version * using version-string * cleanup vcpkg * building artifacts with vcpkg * removed old windows build approach, added custom dependencies (gtsam, libpointmatcher) to vcpkg build * udpated vcpkg version for issue https://github.com/microsoft/vcpkg/pull/49103 * try with minimal dep first * disable opengv for now * try vcpkg single compilation * space * updated link * fixed qupote * fixing cache name * adding debug folder * adjust path * adjust path * providing vcpkg binaries instead * ident * added triplet * added BOOST_ROOT * boost root * boost root * fixed path * adding eigen headers * try path * cmake prefix path * boost timer def * libnabo fixes * pointmatcher prefix * disabling pointmathcer tests * updated cmake parameters * changed how file is downloaded * trying curl instead * puttoing backe InvokeWeb because it is a dropbox issue * skipping optional deps for now * ficing env variable * triplet * installing triplets * not overriding default vcpkg env variables * missing path * manifet install off * that was working locally * missing protobuf path * fixing tiff not found * fixing vtk not found * more vtk fixes * another thy * changing download url * updated url * try * shoudl work now * protobuf exe * readding tiff * explicit vcpkg installed folder * missing commands * try without tiff * ficing vtk comple path * -DPSAPI_LIBRARIES=Psapi.lib * quoting * fixing psapi required * Set up MSVC Developer Command Prompt * disabling pckaging for now * openni.ini * renabling packing * Added stripped deps * fix name * updated binaries * format * updated opengv eigen path * added tbb dep * updatd archive name with vs version * updated archive in action * fixing patch error * corrupted * updated gtsam version / vcpkg * removed appveyor. Set internal opengv build disabled by defaut (because build can be very long on some machines), will enable it inside the ros release branches instead. * updated opengv patch * gtsam mkl dep * updated vcpkg binaries * updated patches * removed mkl dep * missing eigen in gtsam dep * disabling gtsam till we find a compatible version locally * all working locally! * removed ninja * working python calls * fixed hard symlink for python3.dll * fixed qt missing png, fixed opengv not finding eigen with config, fixed python3.dll missing * fixed flaoting dockwidget on start, removed cmd line window when launching bundled app * use sub-packages cudnn * Added cuda dev workflow * fixed archive name * Updated deps with pytorch cuda * updating ci PATH * fixing ci build without torch * rename cuda artifacts * cache cuda, add job to test internal opengv build * Updated output artifacts zip name * windows package: only zip on pull request * Change USE_INTERNAL_OPENGV to BUILD_OPENGV * use use-github-cache * updated artifacts path
This commit is contained in:
224
vcpkg.json
Normal file
224
vcpkg.json
Normal file
@@ -0,0 +1,224 @@
|
||||
{
|
||||
"name": "rtabmap",
|
||||
"version-string": "latest",
|
||||
"$baseline_comment": [
|
||||
"`builtin-baseline` pins the vcpkg *registry snapshot* (a commit in the vcpkg repo).",
|
||||
"Currently matching gtsam's vcpkg version.",
|
||||
"Current commit is from 2026-01-16."
|
||||
],
|
||||
"builtin-baseline": "66c0373dc7fca549e5803087b9487edfe3aca0a1",
|
||||
"description": "Real-Time Appearance-Based Mapping",
|
||||
"homepage": "https://introlab.github.io/rtabmap/",
|
||||
"license": null,
|
||||
"dependencies": [
|
||||
"boost-crc",
|
||||
"ceres",
|
||||
"g2o",
|
||||
{
|
||||
"name": "opencv",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"fs",
|
||||
"intrinsics",
|
||||
"thread"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "pcl",
|
||||
"default-features": false
|
||||
},
|
||||
{
|
||||
"name": "rtabmap-res-tool",
|
||||
"host": true
|
||||
},
|
||||
"sqlite3",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
},
|
||||
"zlib"
|
||||
],
|
||||
"default-features": [
|
||||
"gui",
|
||||
"opencv-contrib",
|
||||
"opencv-nonfree",
|
||||
{
|
||||
"name": "openmp",
|
||||
"platform": "!osx"
|
||||
},
|
||||
{
|
||||
"name": "tbb",
|
||||
"platform": "!osx"
|
||||
}
|
||||
],
|
||||
"features": {
|
||||
"gtsam-deps": {
|
||||
"description": "Build GTSAM's dependencies (based on official vcpkg.json file in gtsam repo). Removed pybind11 and mkl.",
|
||||
"dependencies": [
|
||||
"tbb",
|
||||
"geographiclib",
|
||||
"eigen3",
|
||||
"boost-concept-check",
|
||||
"boost-fusion",
|
||||
"boost-graph",
|
||||
"boost-move",
|
||||
"boost-optional",
|
||||
"boost-phoenix",
|
||||
"boost-pool",
|
||||
"boost-program-options",
|
||||
"boost-random",
|
||||
"boost-range",
|
||||
"boost-serialization",
|
||||
"boost-smart-ptr",
|
||||
"boost-spirit",
|
||||
"boost-timer",
|
||||
"boost-tokenizer",
|
||||
"boost-type-traits"
|
||||
]
|
||||
},
|
||||
"gui": {
|
||||
"description": "Build RTAB-Map with GUI support (Qt)",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "pcl",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"qt",
|
||||
"visualization"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "qtbase",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"gui",
|
||||
"opengl",
|
||||
"widgets",
|
||||
"png"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "vtk",
|
||||
"default-features": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"k4w2": {
|
||||
"description": "Build RTAB-Map with Kinect For Windows SDK 2.0 camera driver",
|
||||
"dependencies": [
|
||||
"kinectsdk2"
|
||||
]
|
||||
},
|
||||
"libpointmatcher-deps": {
|
||||
"description": "Build libpointmatcher's dependencies",
|
||||
"dependencies": [
|
||||
"boost-assign",
|
||||
"boost-format",
|
||||
"boost-program-options",
|
||||
"boost-timer"
|
||||
]
|
||||
},
|
||||
"octomap": {
|
||||
"description": "Build RTAB-Map with OctoMap support",
|
||||
"dependencies": [
|
||||
"octomap"
|
||||
]
|
||||
},
|
||||
"opencv-contrib": {
|
||||
"description": "Use OpenCV with contrib modules (e.g., xfeatures2d, aruco)",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "opencv",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"contrib",
|
||||
"fs",
|
||||
"intrinsics",
|
||||
"thread"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"opencv-cuda": {
|
||||
"description": "Use OpenCV with CUDA (accelerated SIFT ad SURF GPU options)",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "opencv",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"cuda",
|
||||
"fs",
|
||||
"intrinsics",
|
||||
"thread"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"opencv-nonfree": {
|
||||
"description": "Use OpenCV with nonfree module (surf feature)",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "opencv",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"fs",
|
||||
"intrinsics",
|
||||
"nonfree",
|
||||
"thread"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"python": {
|
||||
"description": "Build RTAB-Map with python support",
|
||||
"dependencies": [
|
||||
"pybind11"
|
||||
]
|
||||
},
|
||||
"tbb": {
|
||||
"description": "Include TBB (for opencv and gtsam-deps)",
|
||||
"dependencies": [
|
||||
"tbb",
|
||||
{
|
||||
"name": "opencv",
|
||||
"default-features": false,
|
||||
"features": [
|
||||
"fs",
|
||||
"intrinsics",
|
||||
"tbb",
|
||||
"thread"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"openmp": {
|
||||
"description": "Enable OpenMP parallel execution"
|
||||
},
|
||||
"openni2": {
|
||||
"description": "Build RTAB-Map with OpenNI2 camera driver",
|
||||
"dependencies": [
|
||||
"kinectsdk1",
|
||||
"openni2"
|
||||
]
|
||||
},
|
||||
"realsense2": {
|
||||
"description": "Build RTAB-Map with RealSense2 camera driver",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "realsense2",
|
||||
"default-features": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"tools": {
|
||||
"description": "Build RTAB-Map's tools",
|
||||
"dependencies": [
|
||||
"yaml-cpp"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user