Open edd8e884-f507-429a-b577-5d554626c0fe opened 2 years ago
Attachment: configure.log
Attachment: config.log
Attachment: config.status.gz
Just to be sure, i run the recommended commands :
root@debian:~# apt-get install libcdd-dev libcdd-tools ecl libec-dev eclib-tools libfplll-dev libgiac-dev xcas lcalc liblfunction-dev liblinbox-dev liblrcalc-dev pari-gp2c libpari-dev pari-doc pari-elldata pari-galdata pari-galpol pari-seadata libqhull-dev singular singular-doc libsingular4-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libcdd-dev is already the newest version (094l-2).
libcdd-tools is already the newest version (094l-2).
ecl is already the newest version (20.4.24+ds-2).
eclib-tools is already the newest version (20190909-3+b1).
libec-dev is already the newest version (20190909-3+b1).
libfplll-dev is already the newest version (5.4.0-2).
libgiac-dev is already the newest version (1.6.0.41+dfsg1-1).
xcas is already the newest version (1.6.0.41+dfsg1-1).
pari-gp2c is already the newest version (0.0.12-2).
lcalc is already the newest version (1.23+dfsg-11+b1).
liblfunction-dev is already the newest version (1.23+dfsg-11+b1).
liblinbox-dev is already the newest version (1.6.3-3).
liblrcalc-dev is already the newest version (1.2-2+b1).
libpari-dev is already the newest version (2.13.1-1).
pari-doc is already the newest version (2.13.1-1).
pari-elldata is already the newest version (0.20190911-1).
pari-galdata is already the newest version (0.20080411-3).
pari-galpol is already the newest version (4.0-1.1).
pari-seadata is already the newest version (0.20090618-2).
libqhull-dev is already the newest version (2020.2-3).
libsingular4-dev is already the newest version (1:4.1.1-p2+ds-4+b2).
singular is already the newest version (1:4.1.1-p2+ds-4+b2).
singular-doc is already the newest version (1:4.1.1-p2+ds-4).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@debian:~# apt-get install 4ti2 pari-gp2c libigraph-dev texinfo polymake libpolymake-dev default-jdk libavdevice-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
4ti2 is already the newest version (1.6.9+ds-2).
pari-gp2c is already the newest version (0.0.12-2).
libigraph-dev is already the newest version (0.8.5+ds1-1).
default-jdk is already the newest version (2:1.11-72).
libpolymake-dev is already the newest version (4.3-4).
polymake is already the newest version (4.3-4).
texinfo is already the newest version (6.7.0.dfsg.2-6).
libavdevice-dev is already the newest version (7:4.3.4-0+deb11u1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Description changed:
---
+++
@@ -3,3 +3,32 @@
#33904 is an instance of this error (which i noticed because building polymake eats a lot of ressources).
The logs are attached. The `configure.log` file contains the output of running the `./configure` script.
+
+The 25 packages for which the mechanism does not work are:
+
+- 4ti2
+- cddlib
+- coxeter3
+- ecl
+- eclib
+- fplll
+- giac
+- gp2c
+- igraph
+- info
+- lcalc
+- libsemigroups
+- linbox
+- lrcalc
+- pari
+- pari_elldata
+- pari_galdata
+- pari_galpol
+- pari_nftables
+- pari_seadata
+- pari_seadata_small
+- polymake
+- primecount
+- qhull
+- singular
+
If you read the log:
Checking whether SageMath should install SPKG pari...
314 checking whether any of gmp readline is installed as or will be installed as SPKG... no
315 checking for gp... /usr/bin/gp
316 checking for gphelp... /usr/bin/gphelp
317 checking whether gphelp has access to the documentation... yes
318 checking is pari_elldata installed? ... yes
319 checking is pari_galdata installed? ... yes
320 checking is pari_galpol installed? ... yes
321 checking is pari_seadata installed? ... yes
322 checking whether rnfdisc bug of pari 2.13.1 is fixed... no; cannot use system pari/GP with known bug
323 configure: Upgrade your system package and reconfigure.
324 configure: Otherwise Sage will build its own pari/GP.
325 configure: no suitable system package found for SPKG pari
What's the problem with this?
Replying to @sagetrac-tmonteil:
the
./configure
complains that some of them should be installed
It doesn't complain, it only gives you a hint.
Description changed:
---
+++
@@ -27,7 +27,7 @@
- pari_nftables
- pari_seadata
- pari_seadata_small
-- polymake
+- #33904: polymake
- primecount
- qhull
- singular
Replying to @mkoeppe:
Replying to @sagetrac-tmonteil:
the
./configure
complains that some of them should be installedIt doesn't complain, it only gives you a hint.
And the hint is wrong.
No, it's correct and carefully phrased:
hint: installing the following system packages, if not
already present, is recommended and may avoid having to
build them (though some may have to be built anyway):
What you are observing is why it says "MAY AVOID", not "WILL AVOID".
OK, i will try to deal with that.
Then, what would be the procedure to decide whether the distro package is broken or the spkg-configure.m4
script misses something (when build/pkgs/spkg/spkg-configure.m4
and build/pkgs/spkg/distros/distro.txt
are conflicting) ?
Replying to @sagetrac-tmonteil:
[...] when
build/pkgs/spkg/spkg-configure.m4
andbuild/pkgs/spkg/distros/distro.txt
are conflicting
The debian.txt files capture many versions of Debian, not just debian-stable - also debian-testing and ubuntu-... and linuxmint-... etc.
If you are testing on debian-stable, it is to be expected that many packages are just outdated and not suitable for our needs.
If you look at the logs for all Debian variants and it turns out that none of the packages work for us, then we may want to remove the debian.txt file.
There is another related issue: some packages have a distro/debian.txt
file and no spkg-configure.m4
file: gap, lie, maxima, rubiks
, so that the semantics of those files is unclear to me.
Great question.
In part, these files have been added in preparation for spkg-configure.m4 that is in development somewhere. See #27330 for a list of tickets.
sage -info
(which also creates the documentation at https://doc.sagemath.org/html/en/reference/spkg/gap.html#equivalent-system-packages) shows these packages and then points out "these system packages will not be used for building Sage". This is an entry point for developers.
Optional packages such as rubiks
are also discovered at runtime via Feature
s.
And finally, in our portability CI, we have a configuration called -maximal
that installs these system packages despite having no spkg-configure.m4
. (If you have Docker installed, you can type tox -e docker-debian-bullseye-maximal
to run this.) This is useful for testing that the existence of these system packages does not leak in and break our build.
I am running Debian stable (bullseye), with all packages from
SAGE_ROOT/src/doc/en/installation/debian*.txt
installed. However, the./configure
complains that some of them should be installed, otherwise the corresponding spkgs will be installed (while they are not required).33904 is an instance of this error (which i noticed because building polymake eats a lot of ressources).
The logs are attached. The
configure.log
file contains the output of running the./configure
script.The 25 packages for which the mechanism does not work are:
33904: polymake
Component: packages: standard
Issue created by migration from https://trac.sagemath.org/ticket/33909