-
Notifications
You must be signed in to change notification settings - Fork 41
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
Add ARM architecture support to Maven repository #78
Comments
This is currently a pretty big blocker for me. I would love to help make some progress here. I haven't spent much time with C++ in the last decade, if someone has some pointers I'd be happy to help. I've been fiddling around with things for a bit and seem to currently be stuck on the fact that the most recent libprotoc headers have drifted. Is there any idea which version of the protonf compiler headers this was originally built with? |
Steps I took to unblock myself:
Make sure you have This simply can unblock you. I still need to spend some time trying to put together a real patch so this project can begin publishing artifacts. One problem I already see is that the dependency chain with protoc does not have aarch64 binaries until 3.17.3 so we either need to do the full upgrade of prototbuf and the breaking header changes in the C++ or... well, we probably need to do that. Anyway, hope this helps, I'm not using this library professionally, it's part of a side "for fun" project I'm working on so I may or may not have the time or motivation to do this work but perhaps this helps someone else get a head start if I don't do it myself. |
Perhaps we can cross compile... It's been so long since I've done any of this in C++ land I would need to get some feedback or spend the time to explore what this would take, out may be easy to someone with more recent experience than myself. |
It looks like that diff is probably unnecessary, you can accomplish the same header and library include portions with command line options https://github.com/rsocket/rsocket-rpc-java/blob/master/ci/travis.sh#L3 |
This is s thread of discovery, feel free to follow along on my journey... This may be a simple CI problem. I believe we may be able to add a CI target for an M1 platform and add the aarch64 target to the build file. I need to head into work but will try to put something together this evening for a PR. |
@mgodave Original compiler plugin was coded /w protobuf 3.6.1 in 2018 and was not updated since that time. Not sure update is worth the effort really - the library in its current form is likely an authentic "cruft". For starter, generated java code does not compile /w current RSocket-java. Even if did there are metadata leaks and tracing problems, few other reported issues are rotting on this tracker. Even if these are fixed there is RSocket/RSocket-java whose current GA release (1.1.2) performs plainly worse than GRPC and has 4 outstanding vulnerabilities (trivial server denial-of-service) that are mostly ignored for a year now. |
Motivation
Recently, computers with ARM CPU such as AWS Graviton, Apple M1 and Raspberry Pi are increasing.
By releasing binaries to Maven that run on ARM CPUs, you can run them in a wide range of environments.
Desired solution
Adding Binary Support for ARM CPUs to the Maven Repository
Considered alternatives
Additional context
When I built rsocket-rpc-protobuf version 0.3.0 as a dependency on an M1 computer with ARM, I got the following error:.
The text was updated successfully, but these errors were encountered: