Paul van Wamelen on Tue, 23 Feb 99 07:34:19 -0600


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Sparc under NextStep installation


Dear Pari Developers,

I just tried to compile 2.0.13 on a Sparc running NextStep with cc (it
looks like I have gcc, but it does not run on my architecture...) but
it failed. 2.0.11 worked fine (2.0.12 also fails but for other
reasons). 2.0.13 also works if I answer no to the optimized kernel (no
assembler).

The output of Configure -a was:

==========================================================================
             Beginning configuration questions for GP/PARI.

You will be asked some questions about your system. Most of the time, a list
of acceptable answers will be supplied as well as a default between brackets.
Type carriage return to accept these defaults.

Though the present script strives to prevent any fatal mistake on your part,
there's currently no easy way out if you make one. Your best bet is to press
Ctrl-C, then start again.  Another possibility is to wait till the questions
end, edit the file "dft.Config.in", then run

      Configure -load dft.Config.in

(which can be abbreviated to simply "Configure -l")
==========================================================================
Checking echo to see how to suppress newlines...
...using \c
...The star should be here-->*
Looking for some tools first ...
...ld is /bin/ld
...zcat is /usr/ucb/zcat
...gzip is /usr/local/bin/gzip
...ranlib is /bin/ranlib
...perl is /usr/local/bin/perl
...emacs is /usr/local/bin/emacs
==========================================================================
Currently supported architectures:
      none              m68k              i686
      sparcv7           ix86              hppa
      sparcv8_super     i386              alpha
      sparcv8_micro     i486              mips
      sparcv9           i586              fx2800
...Which of these apply, if any ? [sparc]
==========================================================================
I know of the following Operating Systems
      os2               hpux              sunos
      freebsd           aix               nextstep
      cygwin            osf1              concentrix
      linux             solaris           irix
...Any of these apply ? [nextstep]
==========================================================================
An optimized Pari kernel is available for these architectures
("none" means that we will use the portable C version of GP/PARI)
      none              sparcv8_micro     alpha
      sparcv7           m68k              hppa
      sparcv8_super     ix86
...Which of these apply, if any ? [sparcv8_micro]
==========================================================================
Building for architecture: Sparc running nextstep (MicroSparc kernel)
Checking for optional libraries and headers...
...Found libX11 in /usr/X11R6/lib
...Found X11 header files in /usr/X11R6/include/X11
...Found libreadline in /usr/local/lib
...Found libncurses in /usr/local/lib
...Found libtermcap in /usr/lib
...Found GNU readline header in /usr/local/include/readline
...Library termcap needed by readline
==========================================================================
Do you want to use GNU readline library within GP ? [y] n
==========================================================================
GP contains high resolution plotting functions. Choose among
       none       X11         sunview
...Use which graphic library ("none" means no hi-res plot) ? [X11] none
==========================================================================
The default is to fully optimize the compilation. You may choose to build
  an executable for debugging or profiling instead. Choose among :
       full       debugging       profiling
...Which optimization do you prefer ? [full]
Looking for an assembler ...
...as is /bin/as
Assembler is           /bin/as
Looking for the compilers ...
...cc is /bin/cc
...gcc is /usr/local/bin/gcc
GNU compiler version unknown
==========================================================================
Only ANSI C and C++ compilers are supported. Choosing the GNU compiler
gcc/g++ enables the inlining of kernel routines (about 20% speedup, gcc
producing FASTER code than g++). If you choose not to use gcc, the C++
version of Pari will be a little faster because of general inlining, but
can be used in library mode only with C++ programs (we really recommand
using gcc all the way through).
...Which C compiler shall I use ? [/usr/local/bin/gcc] /bin/cc
...With which flags ? [-O2 -traditional-cpp  -mv8 ]
C compiler is          /bin/cc  -O2 -traditional-cpp  -mv8
C PreProcessor is      /bin/cc -traditional-cpp -E -I.
...Which linker for building executables ? [/bin/cc]
...With which flags ? [-O2 -traditional-cpp  -mv8 ]
Executable linker is   /bin/cc  -O2 -traditional-cpp  -mv8
No Dynamic Lib
==========================================================================
Should you change your mind, you only need to modify the lines
    CC="/bin/cc"
    CFLAGS="-O2 -traditional-cpp  -mv8 "
    LD="/bin/cc"
    LDFLAGS="-O2 -traditional-cpp  -mv8 "
    DLLD=""
    DLLDFLAGS=""
in the Makefile
==========================================================================
Determining sizeof(long) and endianness. If your hardware supports different
size of longs (e.g SGI/MIPS), you can decide to use a particular word size
by specifying endianness (e.g answer 4321 instead of the proposed 87654321).
You'll probably have to specify some exotic compilation flag (e.g -o32,-n32)
============================================================================
What is the internal byte representation of long integer ? [4321]
The internal byte representation of your long integers is 4321.
Checking some common types...
...I did not find ulong.
Looking in C lib for some symbols...
...I did not find exp2.
...Found strftime.
...Found getrusage.
...I did not find sigrelse.
...Found sigsetmask.
...I did not find TIOCGWINSZ.
==========================================================================
By default, gp will be installed in /usr/local/bin, manual pages under
  /usr/local/man, etc..., with /usr/local as prefix for all installation  
directories.
  If you wish to have binaries under /bin but manual pages under
  /usr/local/man, that's ok: you will be prompted separately for each of the
  installation directories, the prefix being only used to set the defaults.
  (You will be prompted before the actual installation is done.)
The names of executables and libraries contain their version number 2.0.
  A symbolic link to gp or libpari.[a/so] will point to the most recent
  installation of GP/PARI.
Installation prefix ? [/usr/local] /wamelen/gp/pari-2.0.13.alpha/installed
..."gp" executable ? [/wamelen/gp/pari-2.0.13.alpha/installed/bin]
..."pari" library ? [/wamelen/gp/pari-2.0.13.alpha/installed/lib]
...include files ? [/wamelen/gp/pari-2.0.13.alpha/installed/include/pari]
...manual pages ? [/wamelen/gp/pari-2.0.13.alpha/installed/man/man1]
...documentation, help scripts, and emacs macros ?  
[/wamelen/gp/pari-2.0.13.alpha/installed/lib/pari]
...miscellaneous data (galois resolvents) ?  
[/wamelen/gp/pari-2.0.13.alpha/installed/lib/pari/data]
==========================================================================
We cannot build a dynamic executable. We will build the static version.
Default is static executable and archive library
==========================================================================
This is the name of the directory where all the object files will be :
...Enter dir name : [o.nextstep-sparc]
==========================================================================
Extracting examples/Makefile.sparc-nextstep
Extracting o.nextstep-sparc/Makefile
Extracting Makefile
Extracting o.nextstep-sparc/paricfg.h
Extracting scripts and macros
...in doc
...in emacs
==========================================================================
Shall we try to build pari 2.0.13 (alpha) now (y/n)? [n] y
cd o.nextstep-sparc; make gp
make[1]: Entering directory  
`/private/Net/marais/User3/Prof/wamelen/pari-2.0.13.alpha/o.nextstep-sparc'
/bin/cc -traditional-cpp -E -I.  - <  
../src/kernel/sparcv8/level0_sparcv8_micro.s > kernel1.s
/bin/as  -o kernel.o kernel1.s
cat ../src/kernel/none/asm0.h ../src/kernel/none/level1.h > pariinl.h
/bin/cc -c -O2 -traditional-cpp  -mv8  -I. -I../src/headers -o mp.o  
../src/kernel/none/mp.c
/bin/cc -c -O2 -traditional-cpp  -mv8  -I. -I../src/headers  -o alglin1.o  
../src/basemath/alglin1.c

blablabla and then

/bin/cc -o gp-sta -O2 -traditional-cpp  -mv8  kernel.o mp.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 gen1.o gen2.o gen3.o ifactor1.o  
polarit1.o polarit2.o polarit3.o rootpol.o trans1.o trans2.o trans3.o  
elliptic.o galois.o kummer.o mpqs.o nffactor.o stark.o subfield.o thue.o  
anal.o compat.o errmsg.o es.o helpmsg.o init.o sumiter.o gp.o gp_init.o  
gp_rl.o highlvl.o plot.o plotport.o     -lm
ld: Undefined symbols:
_addll
_addllx
_addmul
_hiremainder
_mulll
_overflow
_shiftl
_subll
_subllx
make[1]: *** [gp-sta] Error 1
make[1]: Leaving directory  
`/private/Net/marais/User3/Prof/wamelen/pari-2.0.13.alpha/o.nextstep-sparc'
make: *** [gp] Error 2
Bye !

The dft.Config.in file is:

# Config file for Pari  -- Sparc running nextstep (MicroSparc kernel) 32-bit version

shell_q="'"
version='2.0'
TOP='/private/Net/marais/User3/Prof/wamelen/pari-2.0.13.alpha'
config_dir='config'
src_dir='src'
emacs_dir='emacs'
doc_dir='doc'
bindir='/wamelen/gp/pari-2.0.13.alpha/installed/bin'
includedir='/wamelen/gp/pari-2.0.13.alpha/installed/include/pari'
mandir='/wamelen/gp/pari-2.0.13.alpha/installed/man/man1'
miscdir='/wamelen/gp/pari-2.0.13.alpha/installed/lib/pari'
libdir='/wamelen/gp/pari-2.0.13.alpha/installed/lib'
datadir='/wamelen/gp/pari-2.0.13.alpha/installed/lib/pari/data'
optimization='full'
objdir='o.nextstep-sparc'
static='y'
suffix=''
arch='sparc'
asmarch='sparcv8_micro'
osname='nextstep'
pretty='Sparc running nextstep (MicroSparc kernel) 32-bit version'
__gnuc__='yes'
gnuas='no'
CPP='/bin/cc -traditional-cpp -E -I.'
AS='/bin/as'
ASFLAGS=''
CC='/bin/cc'
cflags='-O2 -traditional-cpp -mv8 '
DBGFLAGS='-g -Wall -Wno-implicit'
OPTFLAGS='-O2'
LD='/bin/cc'
LDFLAGS='-O2 -traditional-cpp -mv8 '
DLLD=''
DLSUFFIX=''
somake=''
sodest=''
KERNELCPPFLAGS=''
DLLDFLAGS=''
EXTRADLLDFLAGS=''
runpath='/wamelen/gp/pari-2.0.13.alpha/installed/lib'
runpathprefix=''
LDDYN='-L/wamelen/gp/pari-2.0.13.alpha/installed/lib -lpari'
LIBS=''
DYNLIBS=''
DYNFLAGS=''
DYNRELOC=''
ranlib='/bin/ranlib'
zcat='/usr/ucb/zcat'
emacs='/usr/local/bin/emacs'
perl='/usr/local/bin/perl'
ln_s='ln -s'
make_sh='/bin/sh'
exe_suff=''
readline=''
completionfun='gp-complete'
CPPF_defined='yes'
rl_appendchar='000026c0 D _rl_completion_append_character 00001d08 D  
_rl_completion_append_character'
rl_save_prompt=' U __rl_save_prompt U __rl_save_prompt 00001ca0 T  
__rl_save_prompt U __rl_save_prompt U __rl_save_prompt 000013be T  
__rl_save_prompt'
rl_message='yes'
RLINCLUDE='-I/usr/local/include'
RLLIBS='-L/usr/local/lib -lreadline -ltermcap'
sizeof_long='4'
endian='4321'
has_exp2='no'
has_getrusage='yes'
has_times=''
has_ulong='no'
has_ftime=''
has_strftime='yes'
has_sigrelse='no'
has_sigsetmask='yes'
has_dlopen=''
has_TIOCGWINSZ='no'
gnuplot=''
extralib=''
X11='/usr/X11R6/lib'
Xincroot='/usr/X11R6/include'
which_graphic_lib='none'
gnuplot_libs=''

Let me know if I can test anything on this system.

Keep up the good work!
Paul van Wamelen