#9858 closed defect (fixed)
FLINT 1.5.0.p5's test suite fails to build with new GMP/MPIR
Reported by: | leif | Owned by: | leif |
---|---|---|---|
Priority: | critical | Milestone: | sage-4.8 |
Component: | packages: standard | Keywords: | SAGE_CHECK mpz_random |
Cc: | burcin, mhansen, was, davidloeffler | Merged in: | sage-4.8.alpha0 |
Authors: | Leif Leonhardy | Reviewers: | Jeroen Demeyer |
Report Upstream: | Fixed upstream, in a later stable release. | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
Due to the use of deprecated/obsolete GMP functions, the test suite of flint-1.5.0.p5 fails to build since merging the new MPIR 2.1.3 (#8664), or if one uses any other recent version of MPIR or GMP. This means that the package's installation fails if SAGE_CHECK=yes
:
Successfully installed flint-1.5.0.p5 Running the test suite. ************************************************* Running test suite. This should take 6-20 minutes Please report all failures to sage-devel ************************************************* gcc -std=c99 -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/include/ -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baselin e/local/include -mtune=opteron -march=opteron -fPIC -funroll-loops -O2 -c F_mpz-test.c -o F_mpz-test.o [...] gcc -std=c99 -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/include/ -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/include -mtune=opteron -march=opteron -fPIC -funroll-loops -O2 -c fmpz-test.c -o fmpz-test.o fmpz-test.c: In function âtest___fmpz_normaliseâ: fmpz-test.c:1379:8: warning: implicit declaration of function âmpz_randomâ g++ -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/include/ -I/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/include -mtune=opteron -march=opteron -fPIC -funroll-loops -O2 fmpz-test.o test-support.o -o fmpz-test zn_mod.o misc.o mul_ks.o pack.o mul.o mulmid.o mulmid_ks.o ks_support.o mpn_mulmid.o nuss.o pmf.o pmfvec_fft.o tuning.o mul_fft.o mul_fft_dft.o array.o invert.o mpn_extras.o mpz_extras.o memory-manager.o ZmodF.o ZmodF_mul.o ZmodF_mul-tuning.o fmpz.o fmpz_poly.o mpz_poly-tuning.o mpz_poly.o ZmodF_poly.o long_extras.o zmod_poly.o theta.o zmod_mat.o F_mpz.o tinyQS.o factor_base.o poly.o sieve.o linear_algebra.o block_lanczos.o NTL-interface.o -L/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/lib/ -L/mnt/usb1/scratch/jdemeyer/sage-4.7.2.alpha3-baseline/local/lib/ -lgmp -lpthread -lntl -lm fmpz-test.o: In function `test___fmpz_normalise': fmpz-test.c:(.text+0x368d): undefined reference to `mpz_random' collect2: ld returned 1 exit status make: *** [fmpz-test] Error 1 Error building the test suite for FLINT ************************************* Error testing package ** flint-1.5.0.p5 ** ************************************* sage: An error occurred while testing flint-1.5.0.p5
I guess Bill has already fixed that in FLINT 1.5.2, which was released over a year ago. So simply updating the spkg might suffice.
Btw, at least the current FLINT in Sage ignores user-provided CFLAGS
; one could perhaps "move" them into some other environment variable used by FLINT.
Upstream: http://www.flintlib.org/
New spkg: http://sage.math.washington.edu/home/leif/Sage/spkgs/flint-1.5.0.p10.spkg
md5sum: 907a720d1b9bf9e4bc1412e08b2f8892
flint-1.5.0.p10 (Leif Leonhardy, October 11th 2011)
Attachments (1)
Change History (21)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
FLINT 1.6 was released on/for Chrismas (Dec. 24th).
Unless somebody else already did/does I'll open a ticket to upgrade Sage's version to that one.
Since Sage currently does weird things with the Makefile, providing a new, "clean" spkg will take some time (besides testing collaboration with the new FLINT of course).
(Though FLINT is a plain C library, with a separate module to interface with NTL, which is C++ and hence the interface as well, Sage builds one monolithic "FLINT" library with that interface module included such that it always depends on the NTL library and the C++ standard library, which is totally odd and frequently causes trouble. Changing that requires changes to the Sage library, including module_list.py
and perhaps setup.py
, too.)
The FLINT spkg also needs to be upgraded (to at least version 1.5.2, plus one simple patch) to work on Linux/ARM, see #10328.
comment:3 Changed 11 years ago by
Just for the record:
I have some flint-1.5.2.p1 around to address only the most important issues (changes not yet committed though).
There's much wrong with this spkg (including upstream), but in the light of FLINT 1.6.0 and 2.1.0 (already released), this ticket is mainly intended to prevent FLINT being a show stopper for #8664 and #5847.
I'll perhaps include the patch from #10328, too.
Feel free to ping me w.r.t. uploading a new spkg in case this ticket further drags... ;-)
comment:4 Changed 11 years ago by
- Owner changed from tbd to leif
comment:5 Changed 11 years ago by
Just for the record:
"[...] I assume Sage did not upgrade to flint 1.6. This is a good thing as it will be a very long time before we are able to cover factorisation of polynomials over the integers in flint2. It'll be worth waiting for though.
Bill."
(http://groups.google.com/group/flint-devel/msg/2dc5c1b7fba7520c)
;-)
comment:6 Changed 11 years ago by
comment:7 Changed 11 years ago by
Here is another issue - if one of the patches fails in the current Flint spkg, then the Cygwin-only move of $SAGE_LOCAL/lib/libntl.a
to a temporary file is NOT rescinded. So this should already happen if the patches do not apply. Just a point for any upgrade to FLINT - this should be fixed.
(I noticed this because one of the patches didn't apply for me. Which makes no sense, because it was exactly right. But whatever.)
comment:8 Changed 11 years ago by
See #11727 for that problem.
comment:9 Changed 11 years ago by
- Priority changed from major to blocker
Since #8664 is now included in Sage 4.7.2.alpha3, this should be a blocker for the final Sage 4.7.2.
comment:10 follow-up: ↓ 11 Changed 11 years ago by
- Description modified (diff)
What are the plans for this ticket? Upgrading to FLINT 1.5.2? Upgrading to FLINT 1.6? Upgrading to FLINT 2.x? Fixing more odds and ends in the FLINT spkg?
comment:11 in reply to: ↑ 10 Changed 11 years ago by
- Description modified (diff)
Replying to jdemeyer:
What are the plans for this ticket? Upgrading to FLINT 1.5.2? Upgrading to FLINT 1.6? Upgrading to FLINT 2.x? Fixing more odds and ends in the FLINT spkg?
Upgrading to FLINT 1.5.2, which fixes the original issue and a few other bugs in FLINT 1.5.0.
More precisely, rebasing the FLINT 1.5.2 spkg I already have (which also includes a couple of fixes to Sage's part) on the changes that were made to the 1.5.0 spkg in Sage since the p5.
Upgrading to FLINT 1.6 shouldn't hurt, but would now be better done on a follow-up ticket.
As Bill meanwhile also disclosed on sage-release, they're working hard on a FLINT 2.x (planned as a Christmas present) that implements all features that Sage requires, since the current one doesn't yet provide all we need. (FLINT 2 is a complete rewrite of FLINT 1). So upgrading to that is not an option at the moment.
comment:12 Changed 11 years ago by
- Milestone changed from sage-4.7.2 to sage-4.7.3
- Priority changed from blocker to critical
comment:13 Changed 11 years ago by
For the record, I'm working on that, and not just since today btw.
Nevertheless, nobody should have touched the 1.5.0[.p5] spkg (or earlier ones) without upgrading to 1.5.2, since it fixes other critical bugs.
comment:14 Changed 11 years ago by
- Cc davidloeffler added
- Description modified (diff)
- Status changed from new to needs_review
I've made a FLINT 1.5.0.p10 spkg which just fixes the trivial test suite build error (see the ticket's description), since providing a clean FLINT 1.5.2 spkg based on the 1.5.0.p9 is tedious and still takes some time, hopefully just until tomorrow.
Please test (with SAGE_CHECK=yes
of course, and an MPIR >=1.3.x or GMP 5.x, e.g. with Sage 4.7.2.alpha3) and review!
(Unless you're happy with unmerging the overdue MPIR upgrade from Sage 4.7.2 just for this reason.)
Thanks in advance.
comment:15 Changed 11 years ago by
I've attached a diff between the p9 and the p10 spkg for review.
comment:16 Changed 11 years ago by
- Report Upstream changed from N/A to Fixed upstream, in a later stable release.
comment:17 Changed 11 years ago by
- Reviewers set to Jeroen Demeyer
- Status changed from needs_review to positive_review
comment:18 Changed 11 years ago by
- Merged in set to sage-4.7.3.alpha0
- Resolution set to fixed
- Status changed from positive_review to closed
comment:20 Changed 11 years ago by
- Merged in changed from sage-4.7.3.alpha0 to sage-4.8.alpha0
- Milestone set to sage-4.8
Actually five months ago:
And he did replace
mpz_random()
infmpz-test.c
.