-
Notifications
You must be signed in to change notification settings - Fork 5
WIP: Graal native-image build of Java Schnorr Example #29
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: master
Are you sure you want to change the base?
Conversation
It also looks like some additional build configuration will be required: Update: The PR now includes this work (a somewhat rushed job of it, I must admit) but should build and run on AMD64 machines. |
c0bc17a
to
e33c9c7
Compare
As already mentioned elsewhere, I was able to build and run this successfully:
|
ae1f7e3
to
0cd5fae
Compare
Looks like Graal JDK 25 will be the one: oracle/graal#8113 (comment) Once we have a JDK 25-ea Update: The build can be done under JDK 23/24 with only native-image running under JDK 25 (-ea) |
This is now rebased for JDK 25-ea and can compile because only native-image is run on JDK 25 and it is not run directly from Gradle. To build native image use: ./gradlew secp-examples-java:nativeCompile Running does not work on aarch64-macOS and has not been tested on Linux. Note: the Arena.ofConfined() change should probably not be merged to `master`, but is currently necessary to work with native-image. # Conflicts: # secp-examples-java/src/main/java/org/bitcoinj/secp/examples/ForeignRegistrationFeature.java # secp-integration-test/src/test/java/org/bitcoinj/secp/integration/package-info.java # secp256k1-examples-java/build.gradle
0cd5fae
to
ce2d38c
Compare
Current error on aarch64-darwin and aarch64-linux is:
I suspect the I haven't tested on x86_64. |
I removed myself from the reviewers because I already commented, and I want to clear my list of pending code reviews. Feel free to re-request if desired. |
To build native image use:
./gradlew secp-examples-java:nativeCompile
Currently requires Graal JDK 25-ea