-
-
Notifications
You must be signed in to change notification settings - Fork 401
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
update FriCAS to 1.3.10, allow building with sbcl #37041
Conversation
needs more testing, it appears that few doctests fail |
7 errors in interfaces/fricas.py. Some are easy to fix, but e.g. I don't know what
|
And this
@mantepse - any idea? It appears that |
and these (easy to fix):
|
For the other failures, I need to install the new fricas and put aside some other work. I can do so, but I'd rather finish some other stuff first. |
I'll fix the easy things. |
Yes, there is BTW, what does it take to make FriCAS from an |
We need to hold a vote on this on the sage-develop mailing list. I'll do this now. |
there is a discrepancy between SBCL-compiled and ECL-compiled FriCAS 1.3.10.
this is seen as
This is on M1-macOS machine with ECL 23.9.9. Building on the same machine FriCAS with SBCL produces a working, for this example, FriCAS. This error is not observed on x86_64 Linux and FriCAS 1.3.10 built with ECL 21.2.1 or ECL 23.9.9. |
works for me, but I don't have a Mac. (and thank you!) |
it also works on a x86_64 macOS, so that's really a very specific bug. I'll look more into it. |
Does this error happen with M1-macOS with fricas-1.3.9 and ECL-23.9.9? How about M1-macOS with fricas-1.3.10 and ECL-21.2.1? |
Could someone report on the status of this? (I do not have access to macos) It would be such a shame. |
at the moment, with a recent bunch of macOS tools on M1, fricas in Sage just doesn't build:
|
would you be willing to share this on fricas-devel? I don't have macos, unfortunately. I am guessing it is a FriCAS problem, not a SageMath-FriCAS problem, right? |
I am away from kbd now, feel free to post anywhere. By the way, fricas builds there OK with sbcl from Homebrew. Have not run tests yet |
The above is with ecl? |
yes, the above is with ecl, the standard Sage setup |
Documentation preview for this PR (built with commit 4387983; changes) is ready! 🎉 |
It does build on M1 with the latest (unreleased) ecl, https://gitlab.com/embeddable-common-lisp/ecl/-/merge_requests/324 |
OK, also FriCAS-related errors on M1, mentioned above, are gone! |
I'm not sure I understand correctly. Is this ready to go? (I don't have a Mac) |
not quite. to support macos on M1 (arm64),
none of this is very fast to fix |
we can have a hack for macOS (and not only). Allow using sbcl to build FriCAS. |
I have no idea how to do this. |
I know how, it's not hard. |
We create a dummy package sbcl, and set up building FriCAS so that SBCL >= 2.4.1 is the preferred compiler (if found). |
needs review |
Sorry, I'm a bit overloaded with other things. One question: with this patch, sbcl is always preferred, if available, right? Can you recall for me how to test the PR? |
yes. Should I add an option to
say, over the current git pull origin pull/37041/head
./bootstrap
./configure --enable-fricas
make build should build fricas with sbcl (if available), else with ecl Then you can run tests etc., e.g. |
On Ubuntu 22.04.4, the current sbcl is 2.1.11, so the patch builds with ECL. Is there a good reason not to allow this? |
is this sbcl not too old for fricas? (i don't know) |
FriCAS are compatible with very old SBCL versions. The official binary for linux is built with 1.4.16. |
OK, I'll lower the version requirements to 1.4.16. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, works for me and looks good!
A routine update, with our patches becoming obsolete.
We also allow building FriCAS with sbcl:
We create a dummy package sbcl, and set up building FriCAS so that SBCL >= 2.4.1 is the preferred compiler (if found).
This allows one to circumvent the ECL troubles on arm macOS - install SBCL, done.