POV-Ray : Newsgroups : povray.unix : Install on Solaris 8 : Re: Install on Solaris 8 Server Time
28 Jul 2024 14:30:37 EDT (-0400)
  Re: Install on Solaris 8  
From: Dennis Clarke
Date: 14 Jun 2001 09:28:41
Message: <3B28BC12.4794C081@blastwave.com>
Warp wrote:
> 
> Dennis Clarke <dcl### [at] interlogcom> wrote:
> : There must
> : be a way to get POV-Ray to run a little faster.  What about a compile for the
> : Sparc V9a processor?  A completely 64bit binary.  Would that make any real
> : difference or just create a really large binary file.
> 
>   According to my tests (I haven't tested too extensively, though), compiling
> povray to the V9 processor (with "cc -fast -xarch=v9") gives a 5-10% of speed
> increase compared to an optimized gcc compile.
>   As you guessed, the binary gets huge.

Well, I tried that but got this ...

$ pwd
/export/home/dclarke/pgm/c/povray/source/workshop/povray31/source
$ cd libpng
$ make clean
rm -f *.o libpng.a pngtest pngout.png
$ make libpng.a
cc -fast -xarch=v9 -I../zlib -O  -c  png.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngset.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngget.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngrutil.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngtrans.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngwutil.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngread.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngrio.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngwio.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngwrite.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngrtran.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngwtran.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngmem.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngerror.c
cc -fast -xarch=v9 -I../zlib -O  -c  pngpread.c
ar rc libpng.a  png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o  pngrea
d.o pngrio.o pngwio.o pngwrite.o pngrtran.o  pngwtran.o pngmem.o pngerror.o pngp
read.o
ranlib libpng.a
$ cd ../zlib
$ make clean
rm -f *.o *~ example minigzip libz.a libz.so* foo.gz so_locations \
   _match.s maketree
$ make libz.a
cc -fast -xarch=v9  -c  adler32.c
cc -fast -xarch=v9  -c  compress.c
cc -fast -xarch=v9  -c  crc32.c
cc -fast -xarch=v9  -c  gzio.c
cc -fast -xarch=v9  -c  uncompr.c
cc -fast -xarch=v9  -c  deflate.c
cc -fast -xarch=v9  -c  trees.c
cc -fast -xarch=v9  -c  zutil.c
cc -fast -xarch=v9  -c  inflate.c
cc -fast -xarch=v9  -c  infblock.c
cc -fast -xarch=v9  -c  inftrees.c
cc -fast -xarch=v9  -c  infcodes.c
cc -fast -xarch=v9  -c  infutil.c
cc -fast -xarch=v9  -c  inffast.c
ar rc libz.a adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o  zu
til.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o
$ cd ../unix
$ make newunix
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../atmosph.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../bbox.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../bcyl.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../bezier.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../blob.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../boxes.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../bsphere.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../camera.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../chi2.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../colour.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../cones.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../csg.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../discs.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../express.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../fractal.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../gif.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../gifdecod.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../hcmplx.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../hfield.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../iff.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../image.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../interior.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../lathe.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../lbuffer.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../lighting.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../matrices.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../media.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../mem.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../mesh.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../normal.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../objects.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../octree.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../optin.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../optout.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../parse.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../parstxtr.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../pattern.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../pgm.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../pigment.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../planes.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../png_pov.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../point.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../poly.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../polygon.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../polysolv.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../povray.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../ppm.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../prism.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../quadrics.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../quatern.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../rad_data.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../radiosit.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../ray.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../render.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../sor.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../spheres.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../super.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../targa.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../texture.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../tokenize.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../torus.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../triangle.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../truetype.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../txttest.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../userio.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../vbuffer.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../vlbuffer.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib ../warps.c
cc -fast -xarch=v9 -c -DCOMPILER_VER=\".`uname`.cc\" -DPOV_LIB_DIR=\"/usr/local/
lib/povray31\" -I. -I.. -I../libpng -I../zlib unix.c
cc ./atmosph.o   ./bbox.o      ./bcyl.o      ./bezier.o    ./blob.o      ./boxes
.o     ./bsphere.o   ./camera.o    ./chi2.o      ./colour.o    ./cones.o     ./c
sg.o       ./discs.o     ./express.o   ./fractal.o   ./gif.o       ./gifdecod.o
 ./hcmplx.o    ./hfield.o    ./iff.o       ./image.o     ./interior.o  ./lathe.o
     ./lbuffer.o   ./lighting.o  ./matrices.o  ./media.o     ./mem.o       ./mes
h.o      ./normal.o    ./objects.o   ./octree.o    ./optin.o     ./optout.o    .
/parse.o         ./parstxtr.o  ./pattern.o   ./pgm.o       ./pigment.o   ./plane
s.o    ./png_pov.o   ./point.o     ./poly.o      ./polygon.o   ./polysolv.o  ./p
ovray.o    ./ppm.o       ./prism.o     ./quadrics.o  ./quatern.o   ./rad_data.o
 ./radiosit.o  ./ray.o       ./render.o    ./sor.o       ./spheres.o   ./super.o
     ./targa.o     ./texture.o   ./tokenize.o  ./torus.o     ./triangle.o  ./tru
etype.o  ./txttest.o   ./userio.o    ./vbuffer.o   ./vlbuffer.o  ./warps.o
./unix.o -L../libpng -lpng -L../zlib -lz -lm -o povray
ld: fatal: file ./atmosph.o: wrong ELF class: ELFCLASS64
ld: fatal: File processing errors. No output written to povray
*** Error code 1
make: Fatal error: Command failed for target `povray'
Current working directory /export/home/dclarke/pgm/c/povray/source/workshop/povr
ay31/source/unix
*** Error code 1 (ignored)

Which seems to imply that the linker is having a fit because it doesn't want to
link the 64bit object files.  Perhaps I need to add another option on the ld
line?  I've checked the object files and they are all like so : 

$ ls -lapt *.o
-rw-r--r--   1 dclarke  staff       8384 Jun 14 09:13 unix.o
-rw-r--r--   1 dclarke  staff      10448 Jun 14 09:13 vlbuffer.o
-rw-r--r--   1 dclarke  staff      35544 Jun 14 09:13 vbuffer.o
-rw-r--r--   1 dclarke  staff      30928 Jun 14 09:13 userio.o
-rw-r--r--   1 dclarke  staff      54432 Jun 14 09:13 truetype.o
-rw-r--r--   1 dclarke  staff      16608 Jun 14 09:13 triangle.o
.
.
.
-rw-r--r--   1 dclarke  staff      26408 Jun 14 09:05 mesh.o
-rw-r--r--   1 dclarke  staff      13672 Jun 14 09:05 quatern.o
-rw-r--r--   1 dclarke  staff       7040 Jun 14 09:05 rad_data.o
-rw-r--r--   1 dclarke  staff       2792 Jun 14 09:05 txttest.o
-rw-r--r--   1 dclarke  staff       8064 Jun 14 09:05 warps.o

$ ls -lapt *.o | awk '{print $9}' | xargs file
unix.o:         ELF 64-bit MSB relocatable SPARCV9 Version 1
vlbuffer.o:     ELF 64-bit MSB relocatable SPARCV9 Version 1
vbuffer.o:      ELF 64-bit MSB relocatable SPARCV9 Version 1
userio.o:       ELF 64-bit MSB relocatable SPARCV9 Version 1
truetype.o:     ELF 64-bit MSB relocatable SPARCV9 Version 1
triangle.o:     ELF 64-bit MSB relocatable SPARCV9 Version 1
.
.
.
mesh.o:         ELF 64-bit MSB relocatable SPARCV9 Version 1
quatern.o:      ELF 64-bit MSB relocatable SPARCV9 Version 1
rad_data.o:     ELF 64-bit MSB relocatable SPARCV9 Version 1
txttest.o:      ELF 64-bit MSB relocatable SPARCV9 Version 1
warps.o:        ELF 64-bit MSB relocatable SPARCV9 Version 1

The ld linker could take the following option : 

OPTIONS
     The following options are supported:

     -64   Creates a 64-bit object. By default,the class  of  the
           object  being  generated  is determined from the first
           ELF object  processed  from  the  command  line.  This
           option is useful when creating an object directly with
           ld whose input is solely from a mapfile  (see  the  -M
           option).  

   Now why would I need that when all of the object files are ELF 64-bit ?


Any thoughts on this would be appreciated.

Dennis Clarke


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.