On Sunday 15 November 2009 17:05:28 William Stein wrote:
> On Sun, Nov 15, 2009 at 8:41 AM, Bill Hart <[email protected]>
wrote:
> > 2009/11/15 Jason Moxham <[email protected]>:
> >> This issue has bought up a number of things that need to sorted.
> >>
> >> Sage shouldn't use LD_LIBRARY_PATH to get pari to recognise readline ,
> >> but use ./Configure -with-readline etc , sage may have to use this
> >> method for other packages though?
> >
> > Agreed. Although I didn't know it was doing this incorrectly in the first
> > place.
>
> Just look at the spkg-install script in the pari spkg:
>
> ./Configure $PARI_EXTRA_OPTS --prefix=$SAGE_LOCAL
> --with-readline=$SAGE_LOCAL --with-gmp=$SAGE_LOCAL --kernel=gmp
> --graphic=none
>
> It's been doing the "right thing" all along.
Yeah , true , but
### libncurses.so not found. Please install ncurses development files.
### They usually come in ncurses-devel (RPM) or libncurses-dev (Debian)
packages
###
###
### Readline library detected, but does not seem to work
###
### Building without GNU readline support
Installation prefix ? [/tmp/jason/sage-4.2.1/local]
...for architecture-independent files (share-prefix) ?
this is without the LD_LIBRARY_PATH set , so it's the pari configure script
that needs to be fixed.
>
> >> mpir-1.2 32bit fat should work with gcc , the non-fat versions work ,
> >> and 64bit fat versions works , and apparently some 32bit fat versions
> >> also work , so its not version numbers or missing symbols. Perhaps
> >> debians gcc was built with a debian patched gmp which we have no
> >> "knowledge" of , although I would of thought that it should break in all
> >> cases not just with fat.
> >
> > Right, it probably should work, weird mallocs, nails or some other
> > funnys aside (though apparently Sage works just fine with gmp 4.3.1.
> > So the number of possibilities here is limited.
>
> apparently = definitely.
>
> > Also, if I could actually replicate the issue I could look into the
> > cause. As it is, I still haven't seen the issue occur.
> >
> > I've tried:
> >
> > 1) Building Pari against a fat binary mpir 1.3.0 on a 32 bit system
> > 2) Building Pari against a fat binary mpir 1.2.1 on debian32
> > 3) Changing the compiler optimisation level to -O1 when building Pari
> > against a fat binary mpir-1.2.1 on debian32
> > 4) Changed the LD_LIBRARY_PATH to /home/wbhart/mpir-1.2.1/.libs and
> > changing the compiler optimisation level to -O1 when building Pari
> > against a fat binary mpir-1.2.1 on debian32.
> > 5) Checking whether gcc or cpp are dynamically linked against GMP or
> > MPIR in the first place - they are not.
> >
> > So far I cannot reproduce the issue.
>
> You could replicate the exact issue by building Sage-4.2.1 with
> SAGE_FAT_BINARY="yes". Seeing it with your own eyes might be valuable:
>
> http://sage.math.washington.edu/home/wstein/farm/src/sage-4.2.1.tar
>
> > How does Pari know where to find libm? That is surely not built by
> > Sage. But presumably Pari would not build at all if it couldn't find
> > it.
> >
> > Another possibility is that some symbol we are leaking conflicts with
> > a libm symbol....
> >
> > Dunno.
> >
> > Bill.
> >
> >> As far I can tell , the library versioning system does not allow for
> >> compatible librarys , so there is no solution to this . ie updating the
> >> soname numbers to reflect how mpir changes breaks the gmp soname
> >> numbers and the other way around as well.
> >>
> >> On Sunday 15 November 2009 15:45:19 Bill Hart wrote:
> >>> The version we use for MPIR 1.3.0 *is* 8.0.0. So that shouldn't even
> >>> work with gcc. It should require 7.x.y and since we have 8.0.0 that
> >>> means we don't implement the interface for 7.x.y. The linker should
> >>> complain. GMP 4.3.1 however would work, as it claims to implement the
> >>> previous interface.
> >>>
> >>> So at least this problem won't occur with the latest version of MPIR.
> >>>
> >>> Bill.
> >>>
> >>> 2009/11/15 Bill Hart <[email protected]>:
> >>> > Here are the library numbers for GMP 4.2.1 and 4.2.2:
> >>> >
> >>> > GMP libgmp libgmpxx libmp
> >>> > 4.2.1 7:1:4 4:1:1 4:10:1
> >>> > 4.2.2 7:2:4 4:2:0 4:11:1
> >>> >
> >>> > What this signifies is that there were no interface changes for
> >>> > libgmp, libgmpxx or libmp.
> >>> >
> >>> > For GMP 4.2.2 the age is back to 0. The age signifies the number of
> >>> > previous revisions of the interface this library supports. By
> >>> > changing it to 1, this signifies that libgmpxx supports intefaces 3
> >>> > and 4 of libgmpxx. I think that was incorrect and fixed for GMP
> >>> > 4.2.2.
> >>> >
> >>> > Now debian gcc 4.3.2-2 ultimately requires gmp 4.2.2 (why not 4.2.1 I
> >>> > don't know - possibly because libmpfr had some changes which depended
> >>> > on bug fixes in gmp 4.2.2). Anyhow, for mpir 1.2.1 we set the numbers
> >>> > as:
> >>> >
> >>> > MPIR libgmp libgmpxx libmp
> >>> > 1.2.1 7:5:4 4:5:1 4:14:1
> >>> >
> >>> > which basically signifies that the interface should be the same as
> >>> > for GMP 4.2.1 and 4.2.2. So in fact, it we say it should work with
> >>> > gcc. Also I'm unaware of any interface changes we made for MPIR 1.2.1
> >>> > over GMP 4.2.1. except removal of the ternary operators in gmpxx.h. I
> >>> > do recall some corrections to return values of some functions, which
> >>> > were wrong. But I seem to recall that was a documentation issue only.
> >>> >
> >>> > Anyhow, one issue we have is that we did not set the age of libgmpxx
> >>> > back to 0, so we are still certifying we are compatible with
> >>> > interface 3 of libgmpxx, which is apparently not true.
> >>> >
> >>> > Now for MPIR 1.3.0 the numbers should be set to something like:
> >>> >
> >>> > MPIR libgmp libgmpxx libmp
> >>> > 1.3.0 8:0:0 4:6:1 4:16:1
> >>> >
> >>> > I think it is ok that we removed the ternary operators from gmpxx.h
> >>> > because these are only found in gmpxx.h not in the binary itself. So
> >>> > that does not require a change of interface number (and it also
> >>> > follows GMP's lead on that issue).
> >>> >
> >>> > We've also removed old deprecated functions from libgmp. Thus the
> >>> > 8:0:0. There was actually an MPIR 1.2.2 which never got posted to the
> >>> > website, it had a libmp version of 4:15:1, hence the 4:16:2 for MPIR
> >>> > 1.3.0.
> >>> >
> >>> > Now subsequent GMP versions have had the following numbers:
> >>> >
> >>> > 4.2.3 7:3:4 4:3:0 4:12:1
> >>> > 4.2.4 7:4:4 4:4:0 4:13:1
> >>> > 4.3.0 8:0:5 5:0:1 4:14:1
> >>> > 4.3.1 8:1:5 5:1:1 4:15:1
> >>> >
> >>> > Note the interface change for libgmp to 8:0:5 for GMP 4.3.0. But no
> >>> > removed interfaces means they can bump the age to 5 instead of 0 as
> >>> > they are backwards compatible all the way back to GMP 3.
> >>> >
> >>> > Anyhow, if we change our version to 8:0:0 for MPIR 1.3.0, then
> >>> > basically we are saying we fully implement the GMP interface for GMP
> >>> > 4.3.0 but none of the previous interfaces, which is not true.
> >>> >
> >>> > Essentially there is nothing we can do to get this right.
> >>> > Essentially, if we want the version numbers to mean anything, we'll
> >>> > have to wait until GMP removes some interfaces and sets their age to
> >>> > 0 before removing any deprecated functions. Also, until we fully
> >>> > implement the additional interfaces in GMP 4.3.0 we should not update
> >>> > our interface number to 8.
> >>> >
> >>> > I'm unsure what the new interfaces are, but probably the extgcd
> >>> > functions operate differently, with different normalisation. There
> >>> > might also be some new documented functions. We should compare the
> >>> > manuals. I think there were some changes to some of the division
> >>> > functions.
> >>> >
> >>> > Bill.
> >>> >
> >>> > 2009/11/15 Bill Hart <[email protected]>:
> >>> >> This whole thread raises a question for MPIR 1.3.0. Are we still
> >>> >> binary interface compatible with GMP 4.2.1 given that we have
> >>> >> removed those deprecated functions? If not, then we ought to bump
> >>> >> our soname version numbers accordingly. But how to do this. If we
> >>> >> bump them, then we are essentially saying we are binary compatible
> >>> >> with the next version of GMP that changes the interface. That
> >>> >> wouldn't likely be correct.
> >>> >>
> >>> >> Bill.
> >>> >>
> >>> >> 2009/11/15 Bill Hart <[email protected]>:
> >>> >>> Actually it is the C preprocessor which depends on GMP, but again,
> >>> >>> it doesn't dynamically link with GMP on debian5-32 any more:
> >>> >>>
> >>> >>> wbh...@debian5-32:~$ldd /usr/bin/cpp
> >>> >>> linux-gate.so.1 => (0xb7fa5000)
> >>> >>> libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e3b000)
> >>> >>> /lib/ld-linux.so.2 (0xb7fa6000)
> >>> >>>
> >>> >>> Bill.
> >>> >>>
> >>> >>> 2009/11/15 Bill Hart <[email protected]>:
> >>> >>>> OK, problem seems to have gone on debian5-32:
> >>> >>>>
> >>> >>>> ldd /usr/bin/gcc
> >>> >>>> linux-gate.so.1 => (0xb7f44000)
> >>> >>>> libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7dda000)
> >>> >>>> /lib/ld-linux.so.2 (0xb7f45000)
> >>> >>>>
> >>> >>>> So I can't try any of the above. Looks like someone just
> >>> >>>> statically linked gcc against GMP. And Pari now compiles just fine
> >>> >>>> with LD_LIBRARY_PATH set to the mpir/.libs directory.
> >>> >>>>
> >>> >>>> That will fix the problem with regard to building sage binaries
> >>> >>>> anyhow.
> >>> >>>>
> >>> >>>> Bill.
> >>> >>>>
> >>> >>>> 2009/11/15 Bill Hart <[email protected]>:
> >>> >>>>> A more robust solution is to create a little wrapper script for
> >>> >>>>> gcc which sets LD_LIBRARY_PATH to the system library path (the
> >>> >>>>> original LD_LIBRARY_PATH before the Sage environment was set).
> >>> >>>>> This is actually the accredited technique for complex situations
> >>> >>>>> (such as the one we have).
> >>> >>>>>
> >>> >>>>> http://www.linux.org/docs/ldp/howto/Program-Library-HOWTO/shared-
> >>> >>>>>libr aries.html
> >>> >>>>>
> >>> >>>>> Bill.
> >>> >>>>>
> >>> >>>>> 2009/11/15 Bill Hart <[email protected]>:
> >>> >>>>>> Although it doesn't fix the cython issue, one solution for Pari
> >>> >>>>>> would be to statically link against MPIR. However it isn't a
> >>> >>>>>> proper fix because there is every chance that a similar bug
> >>> >>>>>> could be hit building any of the Sage spkg's. Statically linking
> >>> >>>>>> MPIR against all of them would bloat the binary size, I believe.
> >>> >>>>>>
> >>> >>>>>> Bill.
> >>> >>>>>>
> >>> >>>>>> 2009/11/15 Bill Hart <[email protected]>:
> >>> >>>>>>> I'm probably missing something important here, but why set
> >>> >>>>>>> LD_LIBRARY_PATH to the sage environment for either Configure or
> >>> >>>>>>> make, when building Pari?
> >>> >>>>>>>
> >>> >>>>>>> The correct way to tell Pari which readline and gmp to link
> >>> >>>>>>> against is --with-gmp=.... and --with-readline=.....
> >>> >>>>>>>
> >>> >>>>>>> LD_LIBRARY_PATH should only be changed at runtime.
> >>> >>>>>>>
> >>> >>>>>>> Of course make check probably both compiles the test suite and
> >>> >>>>>>> executes it, which requires LD_LIBRARY_PATH set two different
> >>> >>>>>>> ways at the same time.
> >>> >>>>>>>
> >>> >>>>>>> There is also a potential issue with Cython (I didn't check how
> >>> >>>>>>> Cython calls the compiler). It wants to run the C compiler at
> >>> >>>>>>> Sage runtime. That's also potentially messed up if someone
> >>> >>>>>>> writes some cython code which does constant folding.
> >>> >>>>>>>
> >>> >>>>>>> Really and truly, the gcc should not be dynamically linked
> >>> >>>>>>> against gmp, but statically linked. Under normal circumstances
> >>> >>>>>>> it is not a problem because the user simply adds the Sage local
> >>> >>>>>>> libs directory to LD_LIBRARY_PATH, leaving the system library
> >>> >>>>>>> path in there. Here we don't want to do that because we are
> >>> >>>>>>> providing our own version of "GMP".
> >>> >>>>>>>
> >>> >>>>>>> Basically there is no right way of dealing with an issue like
> >>> >>>>>>> this. If you fork a library that gcc uses then dynamically link
> >>> >>>>>>> gcc against that library, it's broken.
> >>> >>>>>>>
> >>> >>>>>>> Bill.
> >>> >>>>>>>
> >>> >>>>>>> 2009/11/15 Jason Moxham <[email protected]>:
> >>> >>>>>>>> On Sunday 15 November 2009 02:24:47 William Stein wrote:
> >>> >>>>>>>>> On Sat, Nov 14, 2009 at 6:17 PM, Jason Moxham
> >>> >>>>>>>>> <[email protected]>
> >>> >>>>>>>>
> >>> >>>>>>>> wrote:
> >>> >>>>>>>>> > Of course , that is the error
> >>> >>>>>>>>> > LD_LIBRARY_PATH sets the path for executables so there is
> >>> >>>>>>>>> > no need for it to be set when building pari (just when
> >>> >>>>>>>>> > running it) so the only thing that is USING libgmp is gcc
> >>> >>>>>>>>> > which doesn't like it .
> >>> >>>>>>>>>
> >>> >>>>>>>>> This means that a temporary workaround is that in the
> >>> >>>>>>>>> spkg-install script for PARI we put:
> >>> >>>>>>>>>
> >>> >>>>>>>>> echo "Building and install PARI"
> >>> >>>>>>>>> TMP=LD_LIBRARY_PATH; unset LD_LIBRARY_PATH
> >>> >>>>>>>>> if [ "$UNAME" = "CYGWIN" ]; then
> >>> >>>>>>>>> # There are weird bugs in PARI's build process on
> >>> >>>>>>>>> Windows XP # under Cygwin.
> >>> >>>>>>>>> # Passing in this extra flag gets around the bug.
> >>> >>>>>>>>> $MAKE GMPINCLUDE=-I$SAGE_LOCAL/include
> >>> >>>>>>>>> EXTRADLLDFLAGS=-lgmp gp else
> >>> >>>>>>>>> $MAKE gp
> >>> >>>>>>>>> fi
> >>> >>>>>>>>> LD_LIBRARY_PATH=$TMP
> >>> >>>>>>>>
> >>> >>>>>>>> I think pari wont use readline if we do this , but I dont
> >>> >>>>>>>> think sage uses pari like that ? so it should be OK
> >>> >>>>>>>>
> >>> >>>>>>>>> Of course, I'm curious why a FAT mpir crashes GCC...
> >>> >>>>>>>>
> >>> >>>>>>>> Yeah , weird , just seems to be debian 4.3.2 that does it ,
> >>> >>>>>>>> NOTE: gcc-4.3.2 also buggers up some other packages eg
> >>> >>>>>>>> gmp-4.3.x , so it may not be worth the effort trying to fix
> >>> >>>>>>>> it.
> >>> >>>>>>>>
> >>> >>>>>>>>> I can't work on this now, unfortunately, since the latency of
> >>> >>>>>>>>> my net connection at this hotel is horrendous.
> >>> >>>>>>>>>
> >>> >>>>>>>>> William
> >>> >>>>>>>>>
> >>> >>>>>>>>> > On Sunday 15 November 2009 02:06:25 Jason Moxham wrote:
> >>> >>>>>>>>> >> this is with mpir-1.2 ,and I think we have only start to
> >>> >>>>>>>>> >> remove them in 1.3
> >>> >>>>>>>>> >>
> >>> >>>>>>>>> >> I mean pari builds fine with our fat enabled mpir , but
> >>> >>>>>>>>> >> only if LD_LIBRARY_PATH does NOT point to our libmpir
> >>> >>>>>>>>> >>
> >>> >>>>>>>>> >> LD_LIBRARY_PATH is not used until linking time ? so it
> >>> >>>>>>>>> >> should have no effect on the compile .
> >>> >>>>>>>>> >> If gcc is using our libmpir internally , which it should
> >>> >>>>>>>>> >> not , then gcc may require libgmp to built with certain
> >>> >>>>>>>>> >> options , some sort of specific malloc etc
> >>> >>>>>>>>> >>
> >>> >>>>>>>>> >> On Sunday 15 November 2009 01:50:52 Bill Hart wrote:
> >>> >>>>>>>>> >> > Heh! I don't suppose gcc would be using old deprecated
> >>> >>>>>>>>> >> > functions which we've removed. :-)
> >>> >>>>>>>>> >> >
> >>> >>>>>>>>> >> > Bill.
> >>> >>>>>>>>> >> >
> >>> >>>>>>>>> >> > 2009/11/15 Bill Hart <[email protected]>:
> >>> >>>>>>>>> >> > > That seems like a likely possibility, in which case
> >>> >>>>>>>>> >> > > one presumes there is a symbol which GMP provides and
> >>> >>>>>>>>> >> > > we don't, or at least our interface is different.
> >>> >>>>>>>>> >> > >
> >>> >>>>>>>>> >> > > I think gcc only uses GMP for constant folding though,
> >>> >>>>>>>>> >> > > and the line in question didn't involve any constants
> >>> >>>>>>>>> >> > > did it?
> >>> >>>>>>>>> >> > >
> >>> >>>>>>>>> >> > > I wonder how one even debugs something like this. I
> >>> >>>>>>>>> >> > > suppose you could valgrind gcc while compiling that
> >>> >>>>>>>>> >> > > one file?
> >>> >>>>>>>>> >> > >
> >>> >>>>>>>>> >> > > Bill.
> >>> >>>>>>>>> >> > >
> >>> >>>>>>>>> >> > > 2009/11/15 Jason Moxham <[email protected]>:
> >>> >>>>>>>>> >> > >> export
> >>> >>>>>>>>> >> > >> LD_LIBRARY_PATH=/tmp/jason/sage-4.2.1/local/lib/R/lib
> >>> >>>>>>>>> >> > >>:/tm p/jason/sa ge- 4.
> >>> >>>>>>>>> >> > >> 2.1/local/lib/openmpi:/tmp/jason/sage-4.2.1/local/lib
> >>> >>>>>>>>> >> > >>/:
> >>> >>>>>>>>> >> > >>
> >>> >>>>>>>>> >> > >> like the sage shell does and then we get the same
> >>> >>>>>>>>> >> > >> error
> >>> >>>>>>>>> >> > >>
> >>> >>>>>>>>> >> > >> So I deleted all files in .../local/lib/ except
> >>> >>>>>>>>> >> > >> libgmp* and exported
> >>> >>>>>>>>> >> > >> LD_LIBRARY_PATH=/tmp/jason/sage-4.2.1/local/lib/:
> >>> >>>>>>>>> >> > >>
> >>> >>>>>>>>> >> > >> and we get the error
> >>> >>>>>>>>> >> > >> whereas without the export pari builds fine
> >>> >>>>>>>>> >> > >>
> >>> >>>>>>>>> >> > >> Could the gcc on debian32 be using the gmp in our
> >>> >>>>>>>>> >> > >> local path to do its internal optimizations , whereas
> >>> >>>>>>>>> >> > >> gcc should use the system gmp
> >>> >>>>>>>>> >> > >>
> >>> >>>>>>>>> >> > >> On Sunday 15 November 2009 00:24:25 Jason Moxham
wrote:
> >>> >>>>>>>>> >> > >>> It appears to be the actual environment that sage
> >>> >>>>>>>>> >> > >>> provides in its "sage subshell"
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> ie
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> Building pari in the sage shell
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> sage subshell$ ./Configure --graphic=none
> >>> >>>>>>>>> >> > >>> --prefix=/tmp/jason/sage-4.2.1/local
> >>> >>>>>>>>> >> > >>> --with-readline=/tmp/jason/sage-4.2.1/local --with-
> >>> >>>>>>>>> >> > >>> gmp=/tmp/jason/sage-4.2.1/local --kernel=gmp
> >>> >>>>>>>>> >> > >>> --graphic=none && make gp Configuring pari-2.3.3
> >>> >>>>>>>>> >> > >>> (STABLE)
> >>> >>>>>>>>> >> > >>> Checking echo to see how to suppress newlines...
> >>> >>>>>>>>> >> > >>> ...using -n.
> >>> >>>>>>>>> >> > >>> Looking for some tools first ...
> >>> >>>>>>>>> >> > >>> ...ld is /usr/bin/ld
> >>> >>>>>>>>> >> > >>> ...zcat is /bin/zcat
> >>> >>>>>>>>> >> > >>> ...gzip is /bin/gzip
> >>> >>>>>>>>> >> > >>> ...ranlib is /usr/bin/ranlib
> >>> >>>>>>>>> >> > >>> ...perl is /usr/bin/perl
> >>> >>>>>>>>> >> > >>> ...emacs is /usr/bin/emacs
> >>> >>>>>>>>> >> > >>> GNU compiler version 4.3.2 (Debian 4.3.2-1.1)
> >>> >>>>>>>>> >> > >>> Given the previous choices, sizeof(long) is 4 chars.
> >>> >>>>>>>>> >> > >>> The internal word representation of a double is
> >>> >>>>>>>>> >> > >>> l[1], l[0].
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Building for architecture:
> >>> >>>>>>>>> >> > >>> i686 running linux (ix86/GMP kernel) 32-bit version
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === C compiler is gcc
> >>> >>>>>>>>> >> > >>> -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer Executable
> >>> >>>>>>>>> >> > >>> linker is ld --export-dynamic Dynamic Lib linker
> >>> >>>>>>>>> >> > >>> is gcc -shared $(CFLAGS) $(DLCFLAGS) -Wl,-shared,-
> >>> >>>>>>>>> >> > >>> soname=$(LIBPARI_SONAME) Looking in C lib for some
> >>> >>>>>>>>> >> > >>> symbols...
> >>> >>>>>>>>> >> > >>> ...I did not find exp2.
> >>> >>>>>>>>> >> > >>> ...I did not find log2.
> >>> >>>>>>>>> >> > >>> ...Found strftime.
> >>> >>>>>>>>> >> > >>> ...Found getrusage.
> >>> >>>>>>>>> >> > >>> ...Found sigaction.
> >>> >>>>>>>>> >> > >>> ...Found TIOCGWINSZ.
> >>> >>>>>>>>> >> > >>> ...Found getrlimit.
> >>> >>>>>>>>> >> > >>> ...Found stat.
> >>> >>>>>>>>> >> > >>> ...Found vsnprintf.
> >>> >>>>>>>>> >> > >>> ...I did not find dlopen.
> >>> >>>>>>>>> >> > >>> Try again, with -ldl this time...
> >>> >>>>>>>>> >> > >>> ...Found dlopen.
> >>> >>>>>>>>> >> > >>> Checking for optional libraries and headers...
> >>> >>>>>>>>> >> > >>> ...Found libgmp in /tmp/jason/sage-4.2.1/local/lib
> >>> >>>>>>>>> >> > >>> ...Found gmp header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include Using GNU MP,
> >>> >>>>>>>>> >> > >>> version 4.2.1
> >>> >>>>>>>>> >> > >>> ###
> >>> >>>>>>>>> >> > >>> ### libX11.so not found. Please install X11
> >>> >>>>>>>>> >> > >>> development files. ### They usually come in
> >>> >>>>>>>>> >> > >>> XFree86-devel (RPM) or xlibs-dev (Debian) packages
> >>> >>>>>>>>> >> > >>> ###
> >>> >>>>>>>>> >> > >>> ### X11 not found
> >>> >>>>>>>>> >> > >>> ### FLTK not found. Building without FLTK support
> >>> >>>>>>>>> >> > >>> Hi-Res Graphics: none
> >>> >>>>>>>>> >> > >>> ...Found libreadline in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/lib ...Found readline
> >>> >>>>>>>>> >> > >>> header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include/readline
> >>> >>>>>>>>> >> > >>> ...Found history header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include/readline ### ###
> >>> >>>>>>>>> >> > >>> libncurses.so not found. Please install ncurses
> >>> >>>>>>>>> >> > >>> development files. ### They usually come in
> >>> >>>>>>>>> >> > >>> ncurses-devel (RPM) or libncurses-dev (Debian)
> >>> >>>>>>>>> >> > >>> packages ###
> >>> >>>>>>>>> >> > >>> ...Found libtermcap in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/lib/ ...Library termcap
> >>> >>>>>>>>> >> > >>> needed by readline
> >>> >>>>>>>>> >> > >>> Using GNU readline, version 6.0
> >>> >>>>>>>>> >> > >>> Installation prefix ? [/tmp/jason/sage-4.2.1/local]
> >>> >>>>>>>>> >> > >>> ...for architecture-independent files (share-prefix)
> >>> >>>>>>>>> >> > >>> ? [/tmp/jason/sage-4.2.1/local/share]
> >>> >>>>>>>>> >> > >>> Installation directories for:
> >>> >>>>>>>>> >> > >>> ...executables (gp, gphelp) ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/bin] ...libraries
> >>> >>>>>>>>> >> > >>> (libpari) ? [/tmp/jason/sage-4.2.1/local/lib]
> >>> >>>>>>>>> >> > >>> ...include files ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/include] ...manual
> >>> >>>>>>>>> >> > >>> pages ? [/tmp/jason/sage-4.2.1/local/share/man/man1]
> >>> >>>>>>>>> >> > >>> ...emacs macros ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/share/emacs/site-lisp/p
> >>> >>>>>>>>> >> > >>>ari] ...other system-dependant data ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/lib/pari] ...other
> >>> >>>>>>>>> >> > >>> system-independant data ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/share/pari] Default is
> >>> >>>>>>>>> >> > >>> dynamic executable and shared library
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Extracting
> >>> >>>>>>>>> >> > >>> examples/Makefile.linux-i686 Extracting
> >>> >>>>>>>>> >> > >>> Olinux-i686/Makefile
> >>> >>>>>>>>> >> > >>> Extracting Olinux-i686/../Odos/paricfg.h
> >>> >>>>>>>>> >> > >>> ./config/paricfgDOS.h.SH: line 3:
> >>> >>>>>>>>> >> > >>> Olinux-i686/../Odos/paricfg.h: No such file or
> >>> >>>>>>>>> >> > >>> directory Extracting Olinux-i686/paricfg.h
> >>> >>>>>>>>> >> > >>> Extracting Makefile
> >>> >>>>>>>>> >> > >>> Extracting scripts and macros
> >>> >>>>>>>>> >> > >>> ...in doc
> >>> >>>>>>>>> >> > >>> ...in emacs
> >>> >>>>>>>>> >> > >>> ...in misc
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Shall we try to build pari
> >>> >>>>>>>>> >> > >>> 2.3.3 (released) now (y/n)? [n] Ok. Type "make
> >>> >>>>>>>>> >> > >>> install" when you are ready
> >>> >>>>>>>>> >> > >>> Bye !
> >>> >>>>>>>>> >> > >>> Making gp in Olinux-i686
> >>> >>>>>>>>> >> > >>> make[1]: Entering directory
> >>> >>>>>>>>> >> > >>> `/tmp/jason/sage-4.2.1/spkg/build/pari-2.3.3.p5/src/
> >>> >>>>>>>>> >> > >>>Olin ux-i686' File ../src/funclist not changed.
> >>> >>>>>>>>> >> > >>> gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers
> >>> >>>>>>>>> >> > >>> -I../src/language
> >>> >>>>>>>>> >> > >>> -I/tmp/jason/sage-4.2.1/local/include -o gp.o
> >>> >>>>>>>>> >> > >>> ../src/gp/gp.c gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -I../src/language
> >>> >>>>>>>>> >> > >>> -I/tmp/jason/sage-4.2.1/local/include -o gp_rl.o
> >>> >>>>>>>>> >> > >>> ../src/gp/gp_rl.c gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -I../src/graph -o plotport.o
> >>> >>>>>>>>> >> > >>> ../src/graph/plotport.c ../src/graph/plotport.c: In
> >>> >>>>>>>>> >> > >>> function ârectticksâ:
> >>> >>>>>>>>> >> > >>> ../src/graph/plotport.c:469: internal compiler
> >>> >>>>>>>>> >> > >>> error: Segmentation fault Please submit a full bug
> >>> >>>>>>>>> >> > >>> report, with preprocessed source if appropriate.
> >>> >>>>>>>>> >> > >>> See <file:///usr/share/doc/gcc-4.3/README.Bugs> for
> >>> >>>>>>>>> >> > >>> instructions. make[1]: *** [plotport.o] Error 1
> >>> >>>>>>>>> >> > >>> make[1]: Leaving directory
> >>> >>>>>>>>> >> > >>> `/tmp/jason/sage-4.2.1/spkg/build/pari-2.3.3.p5/src/
> >>> >>>>>>>>> >> > >>>Olin ux-i686' make: *** [gp] Error 2
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1
> >>> >>>>>>>>> >> > >>> sage subshell$
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> And build it in a normal shell
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> jasonmox...@debian5-32:/tmp/jason/sage-4.2.1/spkg/bu
> >>> >>>>>>>>> >> > >>>ild/ pari-2.3.3 .p5 /s rc$ ./Configure
> >>> >>>>>>>>> >> > >>> --graphic=none --prefix=/tmp/jason/sage-4.2.1/local
> >>> >>>>>>>>> >> > >>> --with- readline=/tmp/jason/sage-4.2.1/local
> >>> >>>>>>>>> >> > >>> --with-gmp=/tmp/jason/sage-4.2.1/local -- kernel=gmp
> >>> >>>>>>>>> >> > >>> --graphic=none && make gp
> >>> >>>>>>>>> >> > >>> Configuring pari-2.3.3 (STABLE)
> >>> >>>>>>>>> >> > >>> Checking echo to see how to suppress newlines...
> >>> >>>>>>>>> >> > >>> ...using -n.
> >>> >>>>>>>>> >> > >>> Looking for some tools first ...
> >>> >>>>>>>>> >> > >>> ...ld is /usr/bin/ld
> >>> >>>>>>>>> >> > >>> ...zcat is /bin/zcat
> >>> >>>>>>>>> >> > >>> ...gzip is /bin/gzip
> >>> >>>>>>>>> >> > >>> ...ranlib is /usr/bin/ranlib
> >>> >>>>>>>>> >> > >>> ...perl is /usr/bin/perl
> >>> >>>>>>>>> >> > >>> ...emacs is /usr/bin/emacs
> >>> >>>>>>>>> >> > >>> Looking for the compilers ...
> >>> >>>>>>>>> >> > >>> ...cc is /usr/bin/cc
> >>> >>>>>>>>> >> > >>> ...gcc is /usr/bin/gcc
> >>> >>>>>>>>> >> > >>> GNU compiler version 4.3.2 (Debian 4.3.2-1.1)
> >>> >>>>>>>>> >> > >>> Given the previous choices, sizeof(long) is 4 chars.
> >>> >>>>>>>>> >> > >>> The internal word representation of a double is
> >>> >>>>>>>>> >> > >>> l[1], l[0].
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Building for architecture:
> >>> >>>>>>>>> >> > >>> i686 running linux (ix86/GMP kernel) 32-bit version
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === C compiler is
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -O1 -Wall -fno-strict-aliasing -fomit-
> >>> >>>>>>>>> >> > >>> frame-pointer Executable linker is /usr/bin/gcc
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-
> >>> >>>>>>>>> >> > >>> frame-pointer
> >>> >>>>>>>>> >> > >>> -Wl,--export-dynamic Dynamic Lib linker is
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -shared $(CFLAGS) $(DLCFLAGS) -Wl,-
> >>> >>>>>>>>> >> > >>> shared,-soname=$(LIBPARI_SONAME) Looking in C lib
> >>> >>>>>>>>> >> > >>> for some symbols...
> >>> >>>>>>>>> >> > >>> ...I did not find exp2.
> >>> >>>>>>>>> >> > >>> ...I did not find log2.
> >>> >>>>>>>>> >> > >>> ...Found strftime.
> >>> >>>>>>>>> >> > >>> ...Found getrusage.
> >>> >>>>>>>>> >> > >>> ...Found sigaction.
> >>> >>>>>>>>> >> > >>> ...Found TIOCGWINSZ.
> >>> >>>>>>>>> >> > >>> ...Found getrlimit.
> >>> >>>>>>>>> >> > >>> ...Found stat.
> >>> >>>>>>>>> >> > >>> ...Found vsnprintf.
> >>> >>>>>>>>> >> > >>> ...I did not find dlopen.
> >>> >>>>>>>>> >> > >>> Try again, with -ldl this time...
> >>> >>>>>>>>> >> > >>> ...Found dlopen.
> >>> >>>>>>>>> >> > >>> Checking for optional libraries and headers...
> >>> >>>>>>>>> >> > >>> ...Found libgmp in /tmp/jason/sage-4.2.1/local/lib
> >>> >>>>>>>>> >> > >>> ...Found gmp header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include Using GNU MP,
> >>> >>>>>>>>> >> > >>> version 4.2.1
> >>> >>>>>>>>> >> > >>> ###
> >>> >>>>>>>>> >> > >>> ### libX11.so not found. Please install X11
> >>> >>>>>>>>> >> > >>> development files. ### They usually come in
> >>> >>>>>>>>> >> > >>> XFree86-devel (RPM) or xlibs-dev (Debian) packages
> >>> >>>>>>>>> >> > >>> ###
> >>> >>>>>>>>> >> > >>> ### X11 not found
> >>> >>>>>>>>> >> > >>> ### FLTK not found. Building without FLTK support
> >>> >>>>>>>>> >> > >>> Hi-Res Graphics: none
> >>> >>>>>>>>> >> > >>> ...Found libreadline in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/lib ...Found readline
> >>> >>>>>>>>> >> > >>> header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include/readline
> >>> >>>>>>>>> >> > >>> ...Found history header in
> >>> >>>>>>>>> >> > >>> /tmp/jason/sage-4.2.1/local/include/readline ### ###
> >>> >>>>>>>>> >> > >>> libncurses.so not found. Please install ncurses
> >>> >>>>>>>>> >> > >>> development files. ### They usually come in
> >>> >>>>>>>>> >> > >>> ncurses-devel (RPM) or libncurses-dev (Debian)
> >>> >>>>>>>>> >> > >>> packages ###
> >>> >>>>>>>>> >> > >>> ###
> >>> >>>>>>>>> >> > >>> ### Readline library detected, but does not seem to
> >>> >>>>>>>>> >> > >>> work ###
> >>> >>>>>>>>> >> > >>> ### Building without GNU readline support
> >>> >>>>>>>>> >> > >>> Installation prefix ? [/tmp/jason/sage-4.2.1/local]
> >>> >>>>>>>>> >> > >>> ...for architecture-independent files (share-prefix)
> >>> >>>>>>>>> >> > >>> ? [/tmp/jason/sage-4.2.1/local/share]
> >>> >>>>>>>>> >> > >>> Installation directories for:
> >>> >>>>>>>>> >> > >>> ...executables (gp, gphelp) ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/bin] ...libraries
> >>> >>>>>>>>> >> > >>> (libpari) ? [/tmp/jason/sage-4.2.1/local/lib]
> >>> >>>>>>>>> >> > >>> ...include files ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/include] ...manual
> >>> >>>>>>>>> >> > >>> pages ? [/tmp/jason/sage-4.2.1/local/share/man/man1]
> >>> >>>>>>>>> >> > >>> ...emacs macros ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/share/emacs/site-lisp/p
> >>> >>>>>>>>> >> > >>>ari] ...other system-dependant data ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/lib/pari] ...other
> >>> >>>>>>>>> >> > >>> system-independant data ?
> >>> >>>>>>>>> >> > >>> [/tmp/jason/sage-4.2.1/local/share/pari] Default is
> >>> >>>>>>>>> >> > >>> dynamic executable and shared library
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Extracting
> >>> >>>>>>>>> >> > >>> examples/Makefile.linux-i686 Extracting
> >>> >>>>>>>>> >> > >>> Olinux-i686/Makefile
> >>> >>>>>>>>> >> > >>> Extracting Olinux-i686/../Odos/paricfg.h
> >>> >>>>>>>>> >> > >>> ./config/paricfgDOS.h.SH: line 3:
> >>> >>>>>>>>> >> > >>> Olinux-i686/../Odos/paricfg.h: No such file or
> >>> >>>>>>>>> >> > >>> directory Extracting Olinux-i686/paricfg.h
> >>> >>>>>>>>> >> > >>> Extracting Makefile
> >>> >>>>>>>>> >> > >>> Extracting scripts and macros
> >>> >>>>>>>>> >> > >>> ...in doc
> >>> >>>>>>>>> >> > >>> ...in emacs
> >>> >>>>>>>>> >> > >>> ...in misc
> >>> >>>>>>>>> >> > >>> ====================================================
> >>> >>>>>>>>> >> > >>>==== ========== === == === Shall we try to build pari
> >>> >>>>>>>>> >> > >>> 2.3.3 (released) now (y/n)? [n] Ok. Type "make
> >>> >>>>>>>>> >> > >>> install" when you are ready
> >>> >>>>>>>>> >> > >>> Bye !
> >>> >>>>>>>>> >> > >>> Making gp in Olinux-i686
> >>> >>>>>>>>> >> > >>> make[1]: Entering directory
> >>> >>>>>>>>> >> > >>> `/tmp/jason/sage-4.2.1/spkg/build/pari-2.3.3.p5/src/
> >>> >>>>>>>>> >> > >>>Olin ux-i686' File ../src/funclist not changed.
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers
> >>> >>>>>>>>> >> > >>> -I../src/language -o gp.o ../src/gp/gp.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -I../src/language -o gp_rl.o
> >>> >>>>>>>>> >> > >>> ../src/gp/gp_rl.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -I../src/graph -o plotport.o
> >>> >>>>>>>>> >> > >>> ../src/graph/plotport.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o plotnull.o
> >>> >>>>>>>>> >> > >>> ../src/graph/plotnull.c cat ../src/kernel/gmp/mp.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/none/cmp.c ../src/kernel/none/gcdll.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/none/ratlift.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/none/invmod.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/gmp/gcd.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/none/mp_indep.c
> >>> >>>>>>>>> >> > >>> ../src/kernel/none/add.c
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> > mp.c
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers
> >>> >>>>>>>>> >> > >>> -I/tmp/jason/sage-4.2.1/local/include -o mp.o mp.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> mpinl.o ../src/kernel/none/mpinl.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> alglin1.o ../src/basemath/alglin1.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o alglin2.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/alglin2.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o arith1.o ../src/basemath/arith1.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> arith2.o ../src/basemath/arith2.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o base1.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/base1.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o base2.o ../src/basemath/base2.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> base3.o ../src/basemath/base3.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o base4.o ../src/basemath/base4.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> base5.o ../src/basemath/base5.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o bibli1.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/bibli1.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o bibli2.o ../src/basemath/bibli2.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> buch1.o ../src/basemath/buch1.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o buch2.o ../src/basemath/buch2.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> buch3.o ../src/basemath/buch3.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o buch4.o ../src/basemath/buch4.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o Flx.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/Flx.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o galconj.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/galconj.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o gen1.o ../src/basemath/gen1.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> gen2.o ../src/basemath/gen2.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> gen3.o ../src/basemath/gen3.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> ifactor1.o ../src/basemath/ifactor1.c /usr/bin/gcc
> >>> >>>>>>>>> >> > >>> -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o perm.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/perm.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o polarit1.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/polarit1.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o polarit2.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/polarit2.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o polarit3.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/polarit3.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o Qfb.o ../src/basemath/Qfb.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o RgX.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/RgX.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> rootpol.o ../src/basemath/rootpol.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o subcyclo.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/subcyclo.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o subgroup.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/subgroup.c /usr/bin/gcc -c -O1
> >>> >>>>>>>>> >> > >>> -Wall -fno-strict-aliasing -fomit-frame-pointer -I.
> >>> >>>>>>>>> >> > >>> - I../src/headers -o trans1.o
> >>> >>>>>>>>> >> > >>> ../src/basemath/trans1.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o trans2.o ../src/basemath/trans2.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> trans3.o ../src/basemath/trans3.c cd ../src/desc &&
> >>> >>>>>>>>> >> > >>> /usr/bin/perl gen_member pari.desc > members-linux-
> >>> >>>>>>>>> >> > >>> i686-15930.tmp mv
> >>> >>>>>>>>> >> > >>> ../src/desc/members-linux-i686-15930.tmp
> >>> >>>>>>>>> >> > >>> ../src/language/members.h /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o anal.o ../src/language/anal.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> compat.o ../src/language/compat.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o default.o
> >>> >>>>>>>>> >> > >>> ../src/language/default.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o errmsg.o ../src/language/errmsg.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o es.o
> >>> >>>>>>>>> >> > >>> ../src/language/es.c cd ../src/desc && /usr/bin/perl
> >>> >>>>>>>>> >> > >>> gen_proto basic pari.desc > init-linux-
> >>> >>>>>>>>> >> > >>> i686-15930.tmp
> >>> >>>>>>>>> >> > >>> mv ../src/desc/init-linux-i686-15930.tmp
> >>> >>>>>>>>> >> > >>> ../src/language/init.h /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o init.o ../src/language/init.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> intnum.o ../src/language/intnum.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o members.o
> >>> >>>>>>>>> >> > >>> ../src/language/members.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o sumiter.o
> >>> >>>>>>>>> >> > >>> ../src/language/sumiter.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o aprcl.o ../src/modules/aprcl.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> elldata.o ../src/modules/elldata.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o elliptic.o
> >>> >>>>>>>>> >> > >>> ../src/modules/elliptic.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o galois.o ../src/modules/galois.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> groupid.o ../src/modules/groupid.c /usr/bin/gcc -c
> >>> >>>>>>>>> >> > >>> -O1 -Wall -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -I. - I../src/headers -o kummer.o
> >>> >>>>>>>>> >> > >>> ../src/modules/kummer.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o mpqs.o ../src/modules/mpqs.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> nffactor.o ../src/modules/nffactor.c /usr/bin/gcc
> >>> >>>>>>>>> >> > >>> -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o part.o
> >>> >>>>>>>>> >> > >>> ../src/modules/part.c /usr/bin/gcc -c -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer -I. -
> >>> >>>>>>>>> >> > >>> I../src/headers -o stark.o ../src/modules/stark.c
> >>> >>>>>>>>> >> > >>> /usr/bin/gcc -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> subfield.o ../src/modules/subfield.c /usr/bin/gcc
> >>> >>>>>>>>> >> > >>> -c -O1 -Wall -fno-strict-aliasing
> >>> >>>>>>>>> >> > >>> -fomit-frame-pointer -I. - I../src/headers -o
> >>> >>>>>>>>> >> > >>> thue.o ../src/modules/thue.c rm -f
> >>> >>>>>>>>> >> > >>> libpari-gmp.so.2.3.3 /usr/bin/gcc -o
> >>> >>>>>>>>> >> > >>> libpari-gmp.so.2.3.3 -shared -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -Wl,-shared,-soname=libpari-gmp.so.2 mp.o mpinl.o
> >>> >>>>>>>>> >> > >>> alglin1.o alglin2.o arith1.o arith2.o base1.o
> >>> >>>>>>>>> >> > >>> base2.o base3.o base4.o base5.o bibli1.o bibli2.o
> >>> >>>>>>>>> >> > >>> buch1.o buch2.o buch3.o buch4.o Flx.o galconj.o
> >>> >>>>>>>>> >> > >>> gen1.o gen2.o gen3.o ifactor1.o perm.o polarit1.o
> >>> >>>>>>>>> >> > >>> polarit2.o polarit3.o Qfb.o RgX.o rootpol.o
> >>> >>>>>>>>> >> > >>> subcyclo.o subgroup.o trans1.o trans2.o trans3.o
> >>> >>>>>>>>> >> > >>> anal.o compat.o default.o errmsg.o es.o init.o
> >>> >>>>>>>>> >> > >>> intnum.o members.o sumiter.o aprcl.o elldata.o
> >>> >>>>>>>>> >> > >>> elliptic.o galois.o groupid.o kummer.o mpqs.o
> >>> >>>>>>>>> >> > >>> nffactor.o part.o stark.o subfield.o thue.o -lc -ldl
> >>> >>>>>>>>> >> > >>> -lm
> >>> >>>>>>>>> >> > >>> -L/tmp/jason/sage-4.2.1/local/lib -lgmp if test
> >>> >>>>>>>>> >> > >>> "libpari-gmp.so.2.3.3" != "libpari.so"; then rm
> >>> >>>>>>>>> >> > >>> -f libpari.so; ln -s libpari-gmp.so.2.3.3
> >>> >>>>>>>>> >> > >>> libpari.so; fi if test "libpari-gmp.so.2.3.3" !=
> >>> >>>>>>>>> >> > >>> "libpari-gmp.so.2"; then rm -f libpari-gmp.so.2;
> >>> >>>>>>>>> >> > >>> ln -s
> >>> >>>>>>>>> >> > >>> libpari-gmp.so.2.3.3 libpari-gmp.so.2; fi rm -f
> >>> >>>>>>>>> >> > >>> gp-dyn /usr/bin/gcc -o gp-dyn -O1 -Wall
> >>> >>>>>>>>> >> > >>> -fno-strict-aliasing -fomit-frame-pointer
> >>> >>>>>>>>> >> > >>> -Wl,--export-dynamic gp.o gp_init.o gp_rl.o
> >>> >>>>>>>>> >> > >>> highlvl.o whatnow.o plotport.o plotnull.o
> >>> >>>>>>>>> >> > >>> -L"/tmp/jason/sage-4.2.1/spkg/build/pari-2.3.3.p5/sr
> >>> >>>>>>>>> >> > >>>c/Ol inux-i686" -L/tmp/jason/sage-4.2.1/local/lib
> >>> >>>>>>>>> >> > >>> -lpari -ldl -lm - L/tmp/jason/sage-4.2.1/local/lib
> >>> >>>>>>>>> >> > >>> -lgmp rm -f ../gp
> >>> >>>>>>>>> >> > >>> ln -s Olinux-i686/gp-dyn ../gp
> >>> >>>>>>>>> >> > >>> make[1]: Leaving directory
> >>> >>>>>>>>> >> > >>> `/tmp/jason/sage-4.2.1/spkg/build/pari-2.3.3.p5/src/
> >>> >>>>>>>>> >> > >>>Olin ux-i686'
> >>> >>>>>>>>> >> > >>> jasonmox...@debian5-32:/tmp/jason/sage-4.2.1/spkg/bu
> >>> >>>>>>>>> >> > >>>ild/ pari-2.3.3 .p5 /s rc$
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> If the line number where the error occurs is correct
> >>> >>>>>>>>> >> > >>> then it looks like libm is at fault
> >>> >>>>>>>>> >> > >>>
> >>> >>>>>>>>> >> > >>> On Saturday 14 November 2009 19:23:19 Bill Hart
wrote:
> >>> >>>>>>>>> >> > >>> > Was the option -O1 passed to gcc in all instances
> >>> >>>>>>>>> >> > >>> > where the problem occurred?
> >>> >>>>>>>>> >> > >>> >
> >>> >>>>>>>>> >> > >>> > I have heard of instances where -O1 will cause
> >>> >>>>>>>>> >> > >>> > macro errors which cause the compiler to shut
> >>> >>>>>>>>> >> > >>> > down. When a higher optimisation level is used the
> >>> >>>>>>>>> >> > >>> > macro which causes the crash in gcc is optimised
> >>> >>>>>>>>> >> > >>> > away.
> >>> >>>>>>>>> >> > >>> >
> >>> >>>>>>>>> >> > >>> > If that turns out to be the issue, the solution
> >>> >>>>>>>>> >> > >>> > will be to simply compile that one file with -O2
> >>> >>>>>>>>> >> > >>> > optimisation. For most things -O1 is far too slow
> >>> >>>>>>>>> >> > >>> > anyway.
> >>> >>>>>>>>> >> > >>> >
> >>> >>>>>>>>> >> > >>> > Bill.
> >>> >>>>>>>>> >> > >>> >
> >>> >>>>>>>>> >> > >>> > 2009/11/14 William Stein <[email protected]>:
> >>> >>>>>>>>> >> > >>> > > On Sat, Nov 14, 2009 at 12:05 AM, Jason Moxham
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > <[email protected]> wrote:
> >>> >>>>>>>>> >> > >>> > >> Hi
> >>> >>>>>>>>> >> > >>> > >>
> >>> >>>>>>>>> >> > >>> > >> I thought I would give it a try , but I cant
> >>> >>>>>>>>> >> > >>> > >> login to debian32 , doesn't like my password ,
> >>> >>>>>>>>> >> > >>> > >> although boxen and fedora32 are OK ?? I thought
> >>> >>>>>>>>> >> > >>> > >> the passwords were all the same for the virtual
> >>> >>>>>>>>> >> > >>> > >> machines.
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > No. I've added your login info so you should be
> >>> >>>>>>>>> >> > >>> > > able to login now.
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > >> I havent managed to reproduce any error on some
> >>> >>>>>>>>> >> > >>> > >> other 32bit machines but nothing was exactly
> >>> >>>>>>>>> >> > >>> > >> the same.
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > You might want to try starting by doing
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > export SAGE_FAT_BINARY="yes"
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > then build sage-4.2.1.tar by typing "make",
> >>> >>>>>>>>> >> > >>> > > which is at
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > http://sage.math.washington.edu/home/wstein/farm
> >>> >>>>>>>>> >> > >>> > >/src /
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > It'll take a few hours, but you should get the
> >>> >>>>>>>>> >> > >>> > > error.
> >>> >>>>>>>>> >> > >>> > >
> >>> >>>>>>>>> >> > >>> > > William
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"mpir-devel" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/mpir-devel?hl=en
-~----------~----~----~----~------~----~------~--~---