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