-
Notifications
You must be signed in to change notification settings - Fork 27
Add RISC-V 64 Support #31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: ros2
Are you sure you want to change the base?
Conversation
Use gnu_hash in preference to the standard hash table, as it's more efficient, and fall back to the tranditional table if we can't find it. This should fix problems on systems that do not provide the traditional ELF hash table for symbols.
|
This pull request has been mentioned on ROS Discourse. There might be relevant details there: https://discourse.ros.org/t/installing-ros2-humble-on-risc-v-ubuntu/35988/4 |
|
I successfully built ROS 2 for RISC-V 64 with this PR. You can reproduce it following this post: https://discourse.ros.org/t/installing-ros2-humble-on-risc-v-ubuntu/35988 |
I am not familiar with ROS2, much thanks for your work to verify this PR works! |
Signed-off-by: Michael Carroll <[email protected]>
|
Testing via ros2/mimick_vendor#36 |
|
Is there a way forward to getting this merged? Can I lend a hand in testing or getting it over the line? I have been targeting these fixes for the last 5 months or so in my ros2 source build on riscv64 and haven't seen any hiccups, but I haven't gone looking to test for them explicitly. |
|
Yep, this PR would enable building ROS2 for RISC-V, which is quite desirable, IMO |
|
Yes, this fell out of the top of my review queue. I think the best thing here is to resolve the conflicts, then I can bump the SHA in the vendor package and run it through CI again. |
|
I went ahead and rebased this work and pushed it to https://github.com/LucienMorey/Mimick/tree/ros2-fixed. That first commit can be dropped now that you guys have the hashing stuff handled internally in a way you're happy with (#36). I have run a source build no worries for riscv. I am into running the CI to prove that we are not breaking anything unintentionally, but it won't prove that the intended feature is functional because riscv is not one of the tested platforms. |
Adds support for RISC-V 64 architecture and documented this. Also adds tests for functions with float/double arguments. This has been tested on Debian sid riscv64.
Commit "Implement gnu_hash symbol lookup" (93b10bf in the upstream) is necessary to make Mimick function properly on RISC-V 64, so is cherry-picked.
Close #30