-
-
Notifications
You must be signed in to change notification settings - Fork 508
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
Don't ignore "pkg-config --libs-only-other" when building sagelib; and fix linbox.pc #27205
Comments
comment:1
I think we are either misusing |
comment:2
What sage does is to get |
comment:3
There is |
comment:4
I created this patch which takes care of the extra flags only for linbox and fflas-ffpack for now: To apply it here, should I do the same for all modules that use pkgconfig in env.py and module_list.py? |
comment:6
Clearly an oversight on my part when I last updated that pkg-config bit. I didn't know about I think we should make a feature request for upstream For the case at hand here in Gentoo I don't have any problems with linking. I am guessing this is because |
comment:7
I have opened matze/pkgconfig#38 for upstream pkgconfig to help deal with this issue. Of course in the meantime the debian patch is OK. |
comment:8
Thanks. On Debian |
comment:9
Well, I have been giving this some thoughts and I have come to the conclusion that you cannot have that problem unless either |
comment:10
After closer inspection it could also happen if you use openblas compiled with openmp and it is underlinked. I guess that's another possibility, and in that case adding fflas-ffpack's flag to fix it, is just accidental. |
comment:12
Ticket retargeted after milestone closed (if you don't believe this ticket is appropriate for the Sage 8.8 release please retarget manually) |
comment:13
As the Sage-8.8 release milestone is pending, we should delete the sage-8.8 milestone for tickets that are not actively being worked on or that still require significant work to move forward. If you feel that this ticket should be included in the next Sage release at the soonest please set its milestone to the next release milestone (sage-8.9). |
comment:14
I have also been seeing problems like this on Cygwin lately, though I'm not sure where it began. I've been compiling fflas-ffpack with |
comment:16
I think this is showing up in https://github.com/mkoeppe/sage/runs/581024689?check_suite_focus=true too |
comment:18
this seems to be related to OpenMP:
|
comment:20
Looks like fflas-ffpack have openmp pragmas on their header files. Sage should detect whether |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Commit: |
Branch pushed to git repo; I updated commit sha1. New commits:
|
This comment has been minimized.
This comment has been minimized.
comment:27
Fixes the problem on |
comment:28
good catch. needs testing. by the way, is there a ticket to make gh action testing doable from CLI? |
comment:29
Tests running at https://github.com/mkoeppe/sage/actions/runs/80516747 |
comment:30
Replying to @dimpase:
No ticket; but from a comment in #29087: |
comment:31
The tests are ready; needs review |
comment:32
Let's get this into 9.1 please... |
comment:33
lgtm, thanks. |
Reviewer: Dima Pasechnik |
comment:34
Thanks! |
comment:35
See patchbot:
|
comment:36
Should have bumped the patch level |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed branch from u/mkoeppe/sage_ignores_libs_from_pkgconfig__also_linbox_pc_broken_by_a_sage_patch to |
comment:40
Does this ticket fix the following error when building the documentation?
E.g. on ubuntu-focal or debian bullseye: https://github.com/mkoeppe/sage/runs/610674634 This is a new bug that appears to have been introduced in 9.1.rc1. |
Changed commit from |
comment:41
Yes, this ticket fixes this bug. |
When sage uses pkgconfig to determine compile flags, for example in
src/module_list.py
andsrc/sage/env.py
it only extracts the "libraries" but not the "libs" field from pkg-config. In the case of fflas-ffpack this field (as well as cflags) contains-fopenmp
. So sage builds but does not link with this flag which leads to missing symbols on Ubuntu:This was mentioned in https://bugs.debian.org/919573 .
To reproduce:
The resulting sage crashes on startup with the above error.
Applying the Debian patch reveals another Sage bug:
This is linbox upstream issue linbox-team/linbox#170
This ticket fixes both.
CC: @kiwifb @ClementPernet @antonio-rojas @dimpase @mkoeppe @isuruf @vbraun
Component: build
Author: Tobias Hansen, Matthias Koeppe
Branch:
d678f78
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/27205
The text was updated successfully, but these errors were encountered: