Comments (7)
Thanks @traversaro for the huge effort on doing this.
I'm more than happy to be of help supporting any or all grasping/vision-related code for the superbuild. I'm more on the spot for the grasping-related code for which I would probably start adding support, but can later add effort on the vision part.
Port the instructions to compile YARP and ICUB on the pc104/icub-head (http://wiki.icub.org/wiki/Compilation_on_the_pc104 and robotology/icub-main#456) to use the superbuild with appropriate settings, train all the people involved in the maintenance of the robot and eventually migrate the robot setups to use the superbuild. This will simplify refactoring the contents of the Core repository in the future.
YES! 🎉
Provide a vcpkg-based installer for all the dependencies (including vision/learning one) of software in the superbuild, making sure that the superbuild can be easily installed even on Windows.
YES 2! 🎉
I need to deeply understand the superbuild, which will require me some time. But we can start discussing it during the week.
from robotology-superbuild.
your motivations are convincing 👍
from robotology-superbuild.
It would be nice having the possibility of disabling ACE (here)
I would be happy to see if we can find an appropriately flexible way of specifyng this kind of options for the subprojects. For the time being I think 95% of the users of the superbuild will be happy to just compile YARP with ACE, so I think it make sense to keep it like that.
It would be nice enabling / disabling GUIs, especially when one of the _ROBOT option is enabled
This is a good point, I think it could be a nice "dependency" option such as ROBOTOLOGY_USES_GUIS
or something similar.
I don't see QT5 dependencies for GUIs
Fixed in traversaro#9 .
icub-models repository is still missing, and slowly icub-gazebo will become legacy
Created a separate issue in https://github.com/traversaro/robotology-superbuild/issues/14 .
from robotology-superbuild.
Thanks for this, the intended use of the YCM tool was exactly to have a robotology superbuild.
Comment: instead of an explicit profile in CMake why not leave the options generic and populate a set of .cmake with the name of the profile that set options appropriately? e.g.
- IOL.cmake
- ICUB_ROBOT_CAN.cmake
wouldn't this be more maintainable?
from robotology-superbuild.
Comment: instead of an explicit profile in CMake why not leave the options generic and populate a set of .cmake with the name of the profile that set options appropriately? e.g.
- IOL.cmake
- ICUB_ROBOT_CAN.cmake
wouldn't this be more maintainable?
I don't have a strong feeling about this, but the reasons for which I went for explicit option in CMake are:
- YCM currently does not supports to enable/disable single project to build with a CMake option (i.e. there is no
YCM_EP_BUILD_<package>
option). Adding of emulating such an option could be useful, but was an additional work with an uncertain outcome. - Enabling/disabling an option from the CMake GUI on Windows of the
ccmake
command on *nix system is something that all users are familiar with. Passing a initial cmake cache using the-C
command is error-prone (you need to get the right location), would require the Windows users to use a terminal and is not familiar to most user (I, for one, had to search the right option to do that on Google). - Enable/disabling a CMake option in an existing build is trivial with a CMake option, while I don't know if it is possible with cmake cache files.
- Composing different profiles (i.e. let's say that you want to compile IOL, Dynamics and R1) is trivial if they are exposed as CMake options (just enable all of them) while it is impossible when using CMake cache files.
As always, I will be happy to discuss this in person if necessary.
from robotology-superbuild.
Great work @traversaro, I'm eagerly looking forward to it. Some random comments derived also from my current workflow:
- It would be nice having the possibility of disabling ACE (here)
- It would be nice enabling / disabling GUIs, especially when one of the
*_ROBOT*
option is enabled - I don't see QT5 dependencies for GUIs
icub-models
repository is still missing, and slowlyicub-gazebo
will become legacy
from robotology-superbuild.
Closing as the superbuild is now working, even if it is still experimental.
from robotology-superbuild.
Related Issues (20)
- How to ensure that VSCode gets the correct `compile_commands.json` for each subproject of the superbuild? HOT 15
- IDYNTREE_USES_IRRLICHT is not properly set in Windows even if irrlicht and glfw3 are present in the system HOT 2
- Install both robotology-superbuild from source and ros noetic in conda result in dependency error (February 2024) HOT 1
- Re-enable YARP_COMPILE_yarpviz once YARP 3.10.0 is released
- macOS Apple Silicon (macos-14) Conda CI Failure Begin of January 2024 HOT 2
- Provide CMake presets for the robotology-superbuild HOT 1
- WSL documentation suggestion not working for `networkingMode=mirrored` HOT 3
- `***_nws_ros` devices silently removed from robotology-superbuild since December 2023 (including in 2024.02.0 release)
- Build folder generated in the wrong path
- Fix pip check on Apple Silicon
- Getting error while configuring the example tutorial_joint-interface.git HOT 1
- installation in {directory] failed for unknown reason. HOT 2
- Installation of pure python packages fails if internet is not available
- Broken conda packages generation April 2024 HOT 2
- apt dependencies from Ubuntu 24.04 support HOT 6
- Problems installing PyTorch with cuda support in conda environment used for compiling robotology-superbuild
- Conda packages generation failure June 2024 HOT 2
- CI Failure on macOS 12 conda
- Error: when run tutorial (Motor Control Interfaces in Python) yarp did not import HOT 12
- Complete transition to Apple Silicon
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 robotology-superbuild.