Opened 11 years ago
Closed 5 years ago
#11710 closed defect (wontfix)
experimental package macaulay2-1.1-r7221.p0.spkg fails to install
Reported by: | mariah | Owned by: | tbd |
---|---|---|---|
Priority: | major | Milestone: | sage-duplicate/invalid/wontfix |
Component: | packages: experimental | Keywords: | sd32, sd40.5 |
Cc: | Merged in: | ||
Authors: | Andrey Novoseltsev | Reviewers: | John Perry |
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | #13234 | Stopgaps: |
Description (last modified by )
sage-4.7.1 on the Skynet machine eno (x86_64-Linux-core2-fc) fails to install the experimental package macaulay2-1.1-r7221.p0.spkg.
(Note that installing optional package gdbm-1.8.3.spkg is a prerequiste for installing macaulay2-1.1-r7221.p0.spkg
.)
Rather than fix this problem, it may be better to upgrade to a more recent version of Macaulay2, such as macaulay2-1.4-r12617.
eno% ./sage -i ../optional/bug/macaulay2-1.1-r7221.p0.spkg Installing ../optional/bug/macaulay2-1.1-r7221.p0.spkg Calling sage-spkg on ../optional/bug/macaulay2-1.1-r7221.p0.spkg Warning: Attempted to overwrite SAGE_ROOT environment variable macaulay2-1.1-r7221.p0 Machine: Linux eno 2.6.40-4.fc15.x86_64 #1 SMP Fri Jul 29 18:46:53 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux Deleting directories from past builds of previous/current versions of macaulay2-1.1-r7221.p0 Extracting package /home/mariah/sage/sage-4.7.1-x86_64-Linux-core2-fc-macaulay2/../optional/bug/macaulay2-1.1-r7221.p0.spkg ... -rw-r----- 1 mariah sage 2652090 Dec 24 2008 /home/mariah/sage/sage-4.7.1-x86_64-Linux-core2-fc-macaulay2/../optional/bug/macaulay2-1.1-r7221.p0.spkg Finished extraction **************************************************** Host system uname -a: Linux eno 2.6.40-4.fc15.x86_64 #1 SMP Fri Jul 29 18:46:53 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux **************************************************** **************************************************** CC Version gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/local/gcc-4.6.1/x86_64-Linux-core2-fc/libexec/gcc/x86_64-unknown-linux-gnu/4.6.1/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: /usr/local/gcc-4.6.1/src/gcc-4.6.1/configure --enable-languages=c,c++,fortran --with-gnu-as --with-gnu-as=/usr/local/binutils-2.21/x86_64-Linux-core2-fc-gcc-4.5.1-rh/bin/as --with-gnu-ld --with-ld=/usr/local/binutils-2.21/x86_64-Linux-core2-fc-gcc-4.5.1-rh/bin/ld --with-gmp=/usr/local/mpir-2.4.0/x86_64-Linux-core2-fc-gcc-4.6.0-rh --with-mpfr=/usr/local/mpfr-3.0.1/x86_64-Linux-core2-fc-mpir-2.4.0-gcc-4.6.0-rh --with-mpc=/usr/local/mpc-0.9/x86_64-Linux-core2-fc-mpir-2.4.0-mpfr-3.0.1-gcc-4.6.0-rh --prefix=/usr/local/gcc-4.6.1/x86_64-Linux-core2-fc Thread model: posix gcc version 4.6.1 (GCC) **************************************************** + autoconf
...stuff deleted...
checking for a BSD-compatible install... /usr/bin/install -c checking for gawk... gawk checking for gcc... gcc checking whether the C compiler works... no configure: error: in `/home/mariah/sage/sage-4.7.1-x86_64-Linux-core2-fc-macaulay2/spkg/build/macaulay2-1.1-r7221.p0/src/BUILD/normal': configure: error: C compiler cannot create executables See `config.log' for more details
Change History (35)
comment:1 Changed 11 years ago by
comment:2 Changed 11 years ago by
Yes, I tried installing a newer version. It did not go well, and I have abandoned the effort for now. (Other things are demanding my attention.) Perhaps someone else will have better luck!
comment:3 Changed 11 years ago by
- Description modified (diff)
comment:4 Changed 11 years ago by
- Keywords sd32 added
comment:5 Changed 10 years ago by
For the record: Macaulay2 1.5 is about to be released.
comment:6 follow-up: ↓ 7 Changed 10 years ago by
To review #12335 I need to install the spkg macaulay2-1.1-r7221.p0
into sage-5.0 but when I try I get:
Error: the autoconf program is not installed on your system. /bin/sh: autoconf: not found Please install or update autoconf: the version () should be at least 2.59.
It's mentioned in the error message that one can try:
make get-autoconf
but going to a sage shell and into the spkg src and running this command fails:
(sage-sh) jonesbe@sage:src$ make get-autoconf make -f Makefile -C autoconf make[1]: Entering directory `/home/jonesbe/sage/sage-5.0/spkg/build/macaulay2-1.1-r7221.p0/src/autoconf' curl ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz -o "autoconf-2.61.tar.gz" && touch .fetched /bin/sh: curl: not found make[1]: *** [.fetched] Error 127 make[1]: Leaving directory `/home/jonesbe/sage/sage-5.0/spkg/build/macaulay2-1.1-r7221.p0/src/autoconf' make: *** [get-autoconf] Error 2
comment:7 in reply to: ↑ 6 Changed 10 years ago by
Replying to benjaminfjones:
To review #12335 I need to install the spkg
macaulay2-1.1-r7221.p0
into sage-5.0 but when I try I get:Error: the autoconf program is not installed on your system.
Is autoconf installed on your system? If not, does Sage include its own autoconf?
These may be dumb questions, but I can get past the autoconf, maybe because it's on my system. It breaks for me elsewhere.
comment:8 Changed 10 years ago by
I am trying to build M2 1.4 from source - it would be way better to upgrade spkg. My diary:
- I've installed autoconf on my system since it does not seem like Sage includes it in any way.
- bison and flex are available as experimental packages (why not optional?) and installed fine for me.
- I have MAKE="make -j2" and configure complains that make is not GNU, changing it to just "make" works fine.
- Next it complains about libcurses and libncurses. I have libncurses installed, but it is necessary to install development versions. I've done that.
- Now development version of libxml2...
- config finished without errors, make does not work:
error: for the third-party library or program source "gc" the source code is not present in the file "/home/novoselt/tests/Macaulay2-1.4-r12617/BUILD/normal/../../BUILD/tarfiles/gc-7.2alpha5-2010-09-03.tar.gz" so either download a "fat" tar file of the Macaulay2 source code or rerun the Macaulay2 "configure" command with the added option "--enable-download" to enable automatic downloading of the source code over the internet
comment:9 Changed 10 years ago by
I am not sure where fat source is, but I have downloaded files one by one until there were no complaints from here: http://www.math.uiuc.edu/Macaulay2/Downloads/OtherSourceCode/1.4/index.html I had to get 21 out of 29 currently posted there:
4ti2-1.3.2.tar.gz gfan0.4plus.tar.gz nauty24r2.tar.gz cdd+-077a.tar.gz glpk-4.44.tar.gz normaliz2.5Source.zip cddlib-094f.tar.gz lapack-3.2.2.tgz ntl-5.5.2.tar.gz factory-3-1-1.tar.gz libfac-3-1-1.tar.gz pari-2.3.5.tar.gz frobby_v0.8.2.tar.gz lrslib-042c.tar.gz readline61-001 gc-7.2alpha5-2010-09-03.tar.gz mpfr-3.0.0.tar.gz readline61-002 gdbm-1.8.3.tar.gz mpir-2.1.2.tar.gz readline-6.1.tar.gz
As I understand some of these should be substituted by Sage versions. From a license point of view, would it be OK to make an optional spkg with the rest included?
comment:10 Changed 10 years ago by
The end of make's output:
linalg.cpp:528:1: error: ‘FieldMatrix::FieldMatrix’ names the constructor, not the type make[3]: *** [linalg.o] Error 1 make[3]: Leaving directory `/home/novoselt/tests/Macaulay2-1.4-r12617/BUILD/normal/libraries/gfan/build/gfan0.4plus' make[2]: *** [.compiled-0.4plus] Error 2 make[2]: Leaving directory `/home/novoselt/tests/Macaulay2-1.4-r12617/BUILD/normal/libraries/gfan' make[1]: *** [all-in-gfan] Error 2 make[1]: Leaving directory `/home/novoselt/tests/Macaulay2-1.4-r12617/BUILD/normal/libraries' make: *** [all-in-libraries] Error 2 make: Leaving directory `/home/novoselt/tests/Macaulay2-1.4-r12617/BUILD/normal'
comment:11 Changed 10 years ago by
I made a new spkg based on Macaulay2-1.4, so far it fails to build because of 4ti2 and gfan. Both are installed in Sage (4ti2 as optional), but not detected by M2 - I've asked M2 developers what can be done. Including these into M2 package breaks during gfan installation, so I have no idea yet how close I am to a working package.
comment:12 Changed 10 years ago by
- Keywords sd40.5 added
Here is an spkg that tries to build (building 4ti2 and gfan is prohibited):
http://sage.math.washington.edu/home/novoselt/macaulay2-1.4-r12617.spkg
It crashes with implicit-function-declaration after several minutes into the build.
I am also experimenting with the trunk version of version 1.5, but so far I had to enable downloading extra files, these extra files are huge (27Mb for normaliz), and the build is taking forever (although it is likely to succeed - it seems to process documentation now).
comment:13 follow-up: ↓ 14 Changed 10 years ago by
The trunk version has succeeded, although my system now has autoconf, lib(n)curses and libxml2.
comment:14 in reply to: ↑ 13 Changed 10 years ago by
Replying to novoselt:
The trunk version has succeeded, although my system now has autoconf, lib(n)curses and libxml2.
Is it possible and/or advisable to test? I'm interested in trying this out.
comment:15 follow-up: ↓ 16 Changed 10 years ago by
Sure, here is a link:
http://sage.math.washington.edu/home/novoselt/macaulay2-1.5.spkg
Let me know if it complains about bison and flex during build - the install script does not check for them yet.
comment:16 in reply to: ↑ 15 Changed 10 years ago by
Replying to novoselt:
Sure, here is a link:
http://sage.math.washington.edu/home/novoselt/macaulay2-1.5.spkg
Let me know if it complains about bison and flex during build - the install script does not check for them yet.
I had complaints about libxml2 and yacc. I installed bison for yacc. Right now it's still building, but I'm guessing (fingers crossed) that I have everything I need.
I may leave before it quits, and it may be Thursday before I'm back in the office, but I will let you know how it turns out.
comment:17 Changed 10 years ago by
I think there is an option to build without xml, but I didn't try it yet. In any case since I was not able to build 1.4 due to errors during compilation of M2 itself, I'd like to wait till 1.5 is officially released, hopefully with proper packages for Normaliz etc. Then we can see how to cut down on dependencies.
comment:18 Changed 10 years ago by
I encountered a complaint about flex, too. Trying another rebuild...
comment:19 Changed 10 years ago by
Interesting - so this complain was late in the build process, M2 didn't detect its absence? I've updated 1.5 spkg to have checks for gdbm, 4ti2, bison, and flex spkgs. The rest of dependencies has to be dropped somehow.
comment:20 Changed 10 years ago by
- Reviewers set to John Perry
As far as I know, M2 didn't detect its absence, no. It does detect some other things.
Apparently, the build finished, but I don't see any variant of "Macaulay2" in the list of optional_packages, either in the installed section, or the uninstalled section. (i.e., when I call optional_packages()
at the command line.)
If I knew how to test it out, I'd give you some more useful information. (For example, whether it crashes while using it.) I'm turning back to #12802 for a little bit, and I have some other things to do, so I'll look at it later.
BTW, what would constitute grounds for a positive review? Not just the installation, presumably, but a fairly careful amount of checking that it works, right?
comment:21 follow-up: ↓ 22 Changed 10 years ago by
You can try to run "sage -M2" to get M2 prompt and see if it works (worked for me showing version 1.4.0.1). Also I see it in "sage -i" - the list of installed packages. Maybe to see it in optional ones it has to be registered somehow.
For a positive review you need to check that it follows guidelines here: http://sagemath.org/doc/developer/producing_spkgs.html and perhaps there are also specific guidelines for checking them. In any case this is not ready for review yet ;-)
Note also that if you just want to use M2 with Sage, you can install M2 on its own and if it is in your PATH, Sage interface should work. At least I made it work reliably with version 1.3.1 a couple years ago: #7897.
comment:22 in reply to: ↑ 21 Changed 10 years ago by
Replying to novoselt:
You can try to run "sage -M2" to get M2 prompt and see if it works (worked for me showing version 1.4.0.1).
Macaulay2, version 1.4.0.1 with packages: ConwayPolynomials, Elimination, IntegralClosure, LLLBases, PrimaryDecomposition, ReesAlgebra, TangentCone i1 :
Also I see it in "sage -i" - the list of installed packages. Maybe to see it in optional ones it has to be registered somehow.
Okay, yes, I see it there.
For a positive review you need to check that it follows guidelines here: http://sagemath.org/doc/developer/producing_spkgs.html and perhaps there are also specific guidelines for checking them. In any case this is not ready for review yet ;-)
Good point about not being ready for review. :-) For future reference, it's nice to have the link. But, I would also like to try it out with more than the M2 command line; I have seen from my work in mpolynomial_ideal
that there are Macaulay2 representations of polynomials as well as Singular representations, and I think CoCoA representations as well, so I'd like to try working between the groups.
Note also that if you just want to use M2 with Sage, you can install M2 on its own and if it is in your PATH, Sage interface should work. At least I made it work reliably with version 1.3.1 a couple years ago: #7897.
I might like to use M2 with sage, and I have a version installed, as I had thought of looking into this myself at one point. Thanks for the tip.
comment:23 Changed 10 years ago by
One automatic thing to try is (in Sage root)
novoselt@tx2-lmde ~/sage-5.1.beta0 $ ./sage -t -long -optional devel/sage/sage/interfaces/macaulay2.py sage -t -long -optional "devel/sage/sage/interfaces/macaulay2.py" ********************************************************************** File "/home/novoselt/sage-5.1.beta0/devel/sage/sage/interfaces/macaulay2.py", line 398: sage: macaulay2.version() #optional Expected: (1, 3, 1) Got: (1, 4, 0, 1) ********************************************************************** File "/home/novoselt/sage-5.1.beta0/devel/sage/sage/interfaces/macaulay2.py", line 575: sage: latex(m) #optional Expected: \begin{pmatrix}1& {2}\\ {3}& {4}\\ \end{pmatrix} Got: \begin{pmatrix}1& 2\\ 3& 4\\ \end{pmatrix} ********************************************************************** File "/home/novoselt/sage-5.1.beta0/devel/sage/sage/interfaces/macaulay2.py", line 618: sage: R.external_string() #optional Expected: 'QQ[x..y, Degrees => {2:1}, Heft => {1}, MonomialOrder => VerticalList{MonomialSize => 32, GRevLex => {2:1}, Position => Up}, DegreeRank => 1]' Got: 'QQ(monoid[x..y, Degrees => {2:1}, Heft => {1}, MonomialOrder => VerticalList{MonomialSize => 32, GRevLex => {2:1}, Position => Up}, DegreeRank => 1])' ********************************************************************** File "/home/novoselt/sage-5.1.beta0/devel/sage/sage/interfaces/macaulay2.py", line 830: sage: "generators" in traits # optional Expected: True Got: False ********************************************************************** 4 items had failures: 1 of 4 in __main__.example_21 1 of 6 in __main__.example_29 1 of 5 in __main__.example_32 1 of 6 in __main__.example_43 ***Test Failed*** 4 failures. For whitespace errors, see the file /home/novoselt/.sage//tmp/macaulay2_19614.py [12.5 s]
Which shows that things still work quite well - only the last test is not quite clear without looking at the code (and there are 144 failures without M2 available, so there are quite a few tests in that module).
If you have a separate M2 installed, be careful during review tests - if you don't have a working installation inside of Sage the system-wide will be used silently and without any difference. So it may seem that spkg is working when it does not.
On an unrelated note, it is peculiar how 1 was not in {}
before but {2}
was in pmatrix code. New way is more consistent and easier to read by a human, I'd like to change Sage latexing in the same way to make manual modifications of results easier...
comment:24 follow-up: ↓ 25 Changed 10 years ago by
- Dependencies set to #13234
comment:25 in reply to: ↑ 24 Changed 10 years ago by
Replying to novoselt: IMHO, many more spkg's need to be created to satisfy all the dependencies.
comment:26 Changed 9 years ago by
- Milestone changed from sage-5.11 to sage-5.12
comment:27 Changed 8 years ago by
- Milestone changed from sage-6.1 to sage-6.2
comment:28 Changed 8 years ago by
- Milestone changed from sage-6.2 to sage-6.3
comment:29 Changed 8 years ago by
- Milestone changed from sage-6.3 to sage-6.4
comment:30 Changed 6 years ago by
- Milestone changed from sage-6.4 to sage-7.4
comment:31 Changed 6 years ago by
(Not sure what Authors and Reviewers means here, as there doesn't seem to be any code / patch / branch.)
"The current stable version is 1.9.2, released August, 2016."
comment:32 Changed 5 years ago by
- Component changed from packages: optional to packages: experimental
comment:33 Changed 5 years ago by
- Status changed from new to needs_review
I think this can be closed as won't fix. M2 needs many patched, for Boehm GC compatibility, packages (e.g. Flint, NTL) , and it's very bulky this way.
comment:34 Changed 5 years ago by
- Milestone changed from sage-7.4 to sage-duplicate/invalid/wontfix
- Status changed from needs_review to positive_review
comment:35 Changed 5 years ago by
- Resolution set to wontfix
- Status changed from positive_review to closed
I agree, and furthermore it is not even listed under the experimental packages anymore.
Attaching
config.log
in this case wouldn't be bad.But as you mentioned, the package is fairly old anyway, which doesn't necessarily mean a newer version will install seamlessly. Did you already try that?