Vincent Delecroix
unread,Jun 28, 2021, 6:01:21 PM6/28/21Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to sage-devel
Dear all,
I am trying to build sage 9.4.beta3 in a conda environment. I noticed
something fishy with the pari detection. My environment includes
a recent enough pari with the necessary optional packages as can be
seen with
$ which gp
/home/vincent/miniconda3/envs/sage-build/bin/gp
$ gp --version
GP/PARI CALCULATOR Version 2.11.4 (released)
amd64 running linux (x86-64/GMP-6.2.1 kernel) 64-bit version
compiled: Jun 9 2021, gcc version 9.3.0 (crosstool-NG
1.24.0.133_b0863d8_dirty)
threading engine: single
(readline v8.1 disabled, extended
help enabled)
$ gp -q
? ellinit("11a1")
%1 = [0, -1, 1, -10, -20, -4, -20, -79, -21, 496, 20008, -161051,
-122023936/161051, Vecsmall([1]), [Vecsmall([128, -1])], [0, 0, 0, 0, 0,
0, 0, 0]]
? En effet, le 8-9 ça sera le dernier exposé.~^C *** user interrupt
after 2 ms
? galoisgetpol(8)
%2 = 5
? galoisgetname(12,1)
%3 = "C3 : C4"
? ellmodulareqn(11)
%4 = [x^12 + (-y + 744)*x^11 + 196680*x^10 + (187*y + 21354080)*x^9 +
(506*y + 830467440)*x^8 + (-11440*y + 16875327744)*x^7 + (-57442*y +
208564958976)*x^6 + (184184*y + 1678582287360)*x^5 + (1675784*y +
9031525113600)*x^4 + (1867712*y + 32349979904000)*x^3 + (-8252640*y +
74246810880000)*x^2 + (-19849600*y + 98997734400000)*x + (y^2 -
8720000*y + 58411072000000), 1]
? polgalois(x^8-2)
%5 = [16, -1, 8, "2D_8(8)=[D(4)]2"]
However, the configure scripts refuses it because it claims
that "matpermanent" is not available in the library
configure:19515: checking for library containing matpermanent
configure:19546:
/home/vincent/miniconda3/envs/sage-build/bin/x86_64-conda-linux-gnu-c++
-std=gnu++11 -o conftest -fvisibility-inlines-hidden -std=c++17
-fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC
-fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem
/home/vincent/miniconda3/envs/sage-build/include
-I/home/vincent/miniconda3/envs/sage-build/include -DNDEBUG
-D_FORTIFY_SOURCE=2 -O2 -isystem
/home/vincent/miniconda3/envs/sage-build/include -Dlinux
-I/home/vincent/miniconda3/envs/sage-build/include -march=nocona
-mtune=haswell -ftree-vectorize -fPIC -fstack-protector-all -fno-plt -Og
-g -Wall -Wextra -fvar-tracking-assignments -ffunction-sections -pipe
-isystem /home/vincent/miniconda3/envs/sage-build/include
-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/ecl_1622575242000/work=/usr/local/src/conda/ecl-21.2.1
-fdebug-prefix-map=/home/vincent/miniconda3/envs/sage-build=/usr/local/src/conda-prefix
-I/home/vincent/miniconda3/envs/sage-build/include -Wl,-O2
-Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now
-Wl,--disable-new-dtags -Wl,--gc-sections
-Wl,-rpath,/home/vincent/miniconda3/envs/sage-build/lib
-Wl,-rpath-link,/home/vincent/miniconda3/envs/sage-build/lib
-L/home/vincent/miniconda3/envs/sage-build/lib conftest.cpp
-L/home/vincent/miniconda3/envs/sage-build/lib -lcurl -lcliquer -lcddgmp
-lbz2 -larb -lflint -lmpfr -lgmp -lm -lntl >&5
/home/vincent/miniconda3/envs/sage-build/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86_64-conda-linux-gnu/bin/ld:
/tmp/ccN4zFHb.o: in function `main':
/opt/sage/conftest.cpp:79: undefined reference to `matpermanent'
But matpermanent is available in gp
$ gp -q
? matpermanent([1,2;3,4])
%1 = 10
And nm confirms it is there in the library.
$ nm -gD /home/vincent/miniconda3/envs/sage-build/lib/libpari.so | grep
matpermanent
00000000004ae880 T matpermanent
Is that a bug somewhere in the script? Is it normal that the above
compilation command does not include a -lpari?
Vincent