Open graugans opened 8 years ago
This is along the same lines as what I have.
The main issue that has to be addressed (as with getting catkin working on the embedded target) are all the files auto-generated by catkin (such as
I will try to clean up what I have and will commit it to our fork.
That would be really helpful. Thanks in advance.
So, I finally was able to clean up my current status a bit which can be found here
The current status contains a test-image
which I was using as a basis for the command populate_sdk
and as a similar image on the target.
I still have several issues; foremost, I have now an issue that for some reason the boost_thread
library is no longer properly linked and has to be manually added (i.e., by patching the CMakeLists.txt) to quite a few packages. Also, the generated setup.<shell>
scripts as well as the _setup_util.py
script is not yet correct.
Finally, here the commands to build stuff using the SDK:
cd <catkin_ws>
catkin_make --cmake-args -Wno-dev -DCATKIN_ENABLE_TESTING=OFF -DCATKIN_BUILD_BINARY_PACKAGE=ON
-Wno-dev
to suppress some annoying warnings (I haven't looked into them yet) with regard to the include directories which are now prefixed with =
to better support cross compilation. This offloads the responsibility of finding the proper includes to the compiler (I have tested this only with gcc, so no guarantees that this will work with other compilers)-DCATKIN_ENABLE_TESTING=OFF
to disable testing just to void huge dependencies-DCATKIN_BUILD_BINARY_PACKAGE=ON
to suppress the generation of of the (broken) setup.<shell>
and _setup_util.py
utilitiesand to install it:
cd <catkin_ws>
DESTDIR=<target sysroot> catkin_make install --cmake-args -DCMAKE_INSTALL_PREFIX=/opt/ros/indigo
Notes:
recipes-backport
which are stored in directories named <commit date>-<commit hash>
; so depending on which commit you are using you will have to remove some/all of them. (I only tested with one version, namely the one where all these backports where necessary)Hi everyone!
May I ask if current meta-ros (ROS2 Eloquent distro) SDK still work or not? Is it possible to cross-compile a ROS package using an Eloquent OE SDK?
Best Regard, Yao
This issue is a follow up of the discussion with @sephalon and @dominiquehunziker on pull request #376
I have the following scenario in mind. We develop a embedded embedded system and provide the customers a toolchain for this target. The toolchain is generated by the
populate_sdk
task. This task generates a SDK suited for the image deployed on the target. It would be really cool when the user could do the following and compile packages for the target in this case the O3D3xx ToF Camera ROS Package from @tpanzarellaIn my naive way I tried to build a
nativesdk
version of catkin. To be able to build the nativesdk packages the following patch was needed. This patch is against my fork for integration of the libo3d3xx into meta-rosThe nativesdk-catkin builds fine and after adding the following to
TOOLCHAIN_HOST_TASK
I do have catkin in my SDK.All of this is a bit hacks and need some polishing. But I want to ask if this is a possible way to go or if I will run in more headache then I do expect at the moment.