Skip to content
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

FLINT 1.5.0.p5's test suite fails to build with new GMP/MPIR #9858

Closed
nexttime mannequin opened this issue Sep 5, 2010 · 23 comments
Closed

FLINT 1.5.0.p5's test suite fails to build with new GMP/MPIR #9858

nexttime mannequin opened this issue Sep 5, 2010 · 23 comments

Comments

@nexttime
Copy link
Mannequin

nexttime mannequin commented Sep 5, 2010

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)

Upstream: Fixed upstream, in a later stable release.

CC: @burcin @mwhansen @williamstein @loefflerd

Component: packages: standard

Keywords: SAGE_CHECK mpz_random

Author: Leif Leonhardy

Reviewer: Jeroen Demeyer

Merged: sage-4.8.alpha0

Issue created by migration from https://trac.sagemath.org/ticket/9858

@nexttime nexttime mannequin added this to the sage-4.7.2 milestone Sep 5, 2010
@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Sep 5, 2010

comment:1

Actually five months ago:

v 1.5.2 -- 08-Apr-10

   * Added some defines for MPIR 1.3 support (use of deprecated functions)

And he did replace mpz_random() in fmpz-test.c.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Dec 26, 2010

comment:2

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.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Jun 4, 2011

comment:3

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... ;-)

@nexttime nexttime mannequin self-assigned this Jun 4, 2011
@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Jun 18, 2011

comment:5

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)

;-)

@kcrisman
Copy link
Member

kcrisman commented Jul 6, 2011

comment:6

See also #11547 for a (very small, but important) change to the spkg-install needed for Cygwin - just so we don't forget that if this ticket ends up upgrading to p8 (see #11246 for p6 and p7).

@kcrisman
Copy link
Member

comment:7

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.)

@kcrisman
Copy link
Member

comment:8

See #11727 for that problem.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Sep 29, 2011

comment:9

Since #8664 is now included in Sage 4.7.2.alpha3, this should be a blocker for the final Sage 4.7.2.

@nexttime nexttime mannequin added p: blocker / 1 and removed p: major / 3 labels Sep 29, 2011
@jdemeyer

This comment has been minimized.

@jdemeyer
Copy link

jdemeyer commented Oct 9, 2011

comment:10

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?

@nexttime

This comment has been minimized.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 9, 2011

comment:11

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.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

comment:13

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.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

comment:14

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.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

Author: Leif Leonhardy

@nexttime

This comment has been minimized.

@nexttime nexttime mannequin added the s: needs review label Oct 11, 2011
@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

Diff between the p9 and the p10. For reference / review only.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

comment:15

Attachment: flint-1.5.0.p9-p10.diff.gz

I've attached a diff between the p9 and the p10 spkg for review.

@nexttime
Copy link
Mannequin Author

nexttime mannequin commented Oct 11, 2011

Upstream: Fixed upstream, in a later stable release.

@jdemeyer
Copy link

Reviewer: Jeroen Demeyer

@jdemeyer
Copy link

Merged: sage-4.7.3.alpha0

@jdemeyer
Copy link

jdemeyer commented Nov 3, 2011

Milestone sage-4.7.3 deleted

@jdemeyer jdemeyer removed this from the sage-4.8 milestone Nov 3, 2011
@jdemeyer
Copy link

jdemeyer commented Nov 3, 2011

Changed merged from sage-4.7.3.alpha0 to sage-4.8.alpha0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants