- Notifications
You must be signed in to change notification settings - Fork54
Yices2 MacOS Support#400
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 ourterms of service andprivacy 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?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
StefanoDalMas commentedMar 7, 2025
I would like to use it aswell -- are there any plans to move this forward, or is there any fundamental blocker? |
kfriedberger commentedMar 8, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
We appreciate your patience and understand the requirement. At the moment, our team lacks deep expertise with macOS and also the corresponding hardware. Getting started on this will likely require additional time and effort. Supporting macOS presents some unique challenges with native libraries, including:
We’d love to improve macOS support down the line, but with our current resources, it’s not something we can address quickly. If you have any specific suggestions or details that could help us move this along, please let us know - we’d be happy to collaborate. We’ll keep this issue open to track progress and interest. Related issues: |
This PR extends the compile script for the Yices2j JNI-wrapper to support a Darwin-based system. The wrapper is statically linked with its dependencies to produce the single file
libyices2j.dylib.I tested it on an Apple M2 with Sonoma 14.6.1. The targets were
arm64, as well asx86_64(Rosetta 2, witharch x86_64 ./compile.sh). I compiled withclang. For this test, I built Yices 2.6.4 with./configure --enable-thread-safety. Dependencies were installed usingbrew:gmp6.3.0,gperf3.1,openjdk@2121.0.4. The build may deviate from what you use on Linux.The modifications on
compile.shshould not interfere with the Linux build, but this must be tested. I also modified the wrapper code to fix usages from potentially uninitialized variables.This may conflict with#215.