Jean-Pierre Flori on Mon, 25 Mar 2013 10:53:28 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Building PARI/GP on Debian sparc |
Hi, 2013/3/18 Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr>: > On Thu, Mar 14, 2013 at 06:23:52PM +0100, Bill Allombert wrote: >> On Thu, Mar 14, 2013 at 05:43:42PM +0100, Jean-Pierre Flori wrote: >> > Dear all, >> > >> > I tried to build PARI 2.5.3 on a ultrasparc computer running Debian >> > (64 bit kernel, trying to build everything 32 bits, not sure it would >> > have any influence on the following) and had to find workarounds for >> > the following problems: >> > * got a bunch of "Error: Hardware capability "mul32" not enabled for >> > "umul"." and similar errors, apprently you have to give more clues to >> > the assembler, for instance setting CFLAGS="-mcpu=v9" solves this, >> >> Yes, Debian default ABI is 'supersparc' but your system advertises itself >> as a ultrasparc so PARI try to use the microsparc ABI. >> >> > * option "-mimpure-text" is passed if the arch is sparc* but that's >> > only supported by a GCC targetting Solaris, so I modified the right >> > file in the config dir. > > As you can see in the log, gcc 4.6.3 support -mimpure-text on sparc. > <https://buildd.debian.org/status/fetch.php?pkg=pari&arch=sparc&ver=2.5.1-2&stamp=1338810814> > > Which version of gcc did you use ? > Here is some info on the system: $ uname -a Linux lame5 3.2.0-3-sparc64-smp #1 SMP Mon Jul 23 05:25:29 UTC 2012 sparc64 GNU/Linux $ cat /etc/debian_version 7.0 With a first self compiled FSF gcc 4.7.2 I get $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/infres/post/flori/sage-5.7-lame5/local/libexec/gcc/sparc-unknown-linux-gnu/4.7.2/lto-wrapper Target: sparc-unknown-linux-gnu Configured with: ../src/configure --prefix=/infres/post/flori/sage-5.7-lame5/local --with-local-prefix=/infres/post/flori/sage-5.7-lame5/local --with-gmp=/infres/post/flori/sage-5.7-lame5/local --with-mpfr=/infres/post/flori/sage-5.7-lame5/local --with-mpc=/infres/post/flori/sage-5.7-lame5/local --with-system-zlib --disable-multilib --disable-nls Thread model: posix gcc version 4.7.2 (GCC) $ cat test.c int main(){ return 0;} $ gcc -mimpure-text -o test test.c gcc: error: unrecognized command line option '-mimpure-text' Same result with a Debian 4.6.3 system-wide one (sligthly more recent than the one which seems to be used in the log you posted): $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/sparc-linux-gnu/4.6/lto-wrapper Target: sparc-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 4.6.3-14' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --with-long-double-128 --enable-checking=release --build=sparc-linux-gnu --host=sparc-linux-gnu --target=sparc-linux-gnu Thread model: posix gcc version 4.6.3 (Debian 4.6.3-14) $ gcc -mimpure-text -o test test.c cc1: error: unrecognized command line option â-mimpure-textâ +++++++++++++ On another Debian/sparc (gcc63 on GCC compile farm), i get no problems with the system wide Debian 4.3.2 GCC: $ uname -a Linux deluxe 2.6.26-2-sparc64-smp #1 SMP Sun Mar 4 22:02:58 UTC 2012 sparc64 GNU/Linux $ cat /etc/debian_version 5.0.10 $ gcc -v Using built-in specs. Target: sparc-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 4.3.2-1.1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --with-cpu=v8 --with-long-double-128 --enable-checking=release --build=sparc-linux-gnu --host=sparc-linux-gnu --target=sparc-linux-gnu Thread model: posix gcc version 4.3.2 (Debian 4.3.2-1.1) $ gcc -mimpure-text test.c -o test But trouble with a more recent FSF one: $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/home/jpflori/sage-5.7/local/libexec/gcc/sparc-unknown-linux-gnu/4.6.3/lto-wrapper Target: sparc-unknown-linux-gnu Configured with: ../src/configure --prefix=/home/jpflori/sage-5.7/local --with-local-prefix=/home/jpflori/sage-5.7/local --with-gmp=/home/jpflori/sage-5.7/local --with-mpfr=/home/jpflori/sage-5.7/local --with-mpc=/home/jpflori/sage-5.7/local --with-system-zlib --disable-multilib Thread model: posix gcc version 4.6.3 (GCC) $ gcc -o test test.c -mimpure-text cc1: error: unrecognized command line option â-mimpure-textâ +++++++++++++ Just for info, on a Solaris system, with a self-compiled FSF GCC 4.6.3, no problems: $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/infres/post/flori/sage-5.7-infres2/local/libexec/gcc/sparc-sun-solaris2.10/4.6.3/lto-wrapper Target: sparc-sun-solaris2.10 Configured with: ../src/configure --prefix=/infres/post/flori/sage-5.7-infres2/local --with-local-prefix=/infres/post/flori/sage-5.7-infres2/local --with-gmp=/infres/post/flori/sage-5.7-infres2/local --with-mpfr=/infres/post/flori/sage-5.7-infres2/local --with-mpc=/infres/post/flori/sage-5.7-infres2/local --with-system-zlib --disable-multilib --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld Thread model: posix gcc version 4.6.3 (GCC) $ gcc -mimpure-text -o test test.c And with the Sun provided GCC, no problem as well: $ gcc -v Reading specs from /usr/local/packages/gcc3/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/specs Configured with: /sfw10/builds/build/sfw10-patch/usr/src/cmd/gcc/gcc-3.4.3/configure --prefix=/usr/sfw --with-as=/usr/ccs/bin/as --without-gnu-as --with-ld=/usr/ccs/bin/ld --without-gnu-ld --enable-languages=c,c++ --enable-shared Thread model: posix gcc version 3.4.3 (csl-sol210-3_4-branch+sol_rpath) $ gcc -mimpure-text -o test test.c +++++++++++++ So it may be the case the support was dropped from non Solaris targetting recent GCC? See http://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=0c7243ae4c6a5c19049e95e24be527694ddd248a which looks related. > Cheers, > Bill. > Best, JP -- Jean-Pierre Flori