Subject: 1.4.1 linking PIC errors
To: None <port-pmax@netbsd.org>
From: None <mcmahill@mtl.mit.edu>
List: port-pmax
Date: 07/23/1999 17:44:33
I just tried to build the math/scilab on a 1.4.1 pmax snapshot.  scilab is
in both fortran and c.  Under 1.3.x (pmax, mac68k,sparc, i386) I used f2c
for the fortran part.  Under 1.4 on i386 and sparc I used g77.  Anyway,
with 1.4.1 pmax, everything compiles, but the link stage gives tons and
tons of messages like:


/usr/bin/ld: routines/default/Ex-impl.o: linking PIC files with non-PIC
files
Bad value: failed to merge target specific data of file
routines/default/Ex-impl.o
/usr/bin/ld: routines/default/Ex-intg.o: linking PIC files with non-PIC
files
Bad value: failed to merge target specific data of file
routines/default/Ex-intg.o

so, I thought, maybe I just need to add a -fPIC flag to CFLAGS and FFLAGS.
The cc compiler seemed happy, but f77 didn't.  It said:

f77 -O2 -fPIC -c coshin.f
/tmp/ccRcYvhm.s: Assembler messages:
/tmp/ccRcYvhm.s:23: Warning: Macro instruction expanded into multiple
instructio
ns
/tmp/ccRcYvhm.s:23: Warning: No .cprestore pseudo-op used in PIC code
/tmp/ccRcYvhm.s:31: Warning: Macro instruction expanded into multiple
instructio
ns
/tmp/ccRcYvhm.s:31: Warning: No .cprestore pseudo-op used in PIC code
f77 -O2 -fPIC -c arcosh.f
/tmp/ccfts7en.s: Assembler messages:
/tmp/ccfts7en.s:30: Warning: Macro instruction expanded into multiple
instructio
ns
/tmp/ccfts7en.s:30: Warning: No .cprestore pseudo-op used in PIC code
/tmp/ccfts7en.s:38: Warning: Macro instruction expanded into multiple
instructio
ns
/tmp/ccfts7en.s:38: Warning: No .cprestore pseudo-op used in PIC code

(and tons more like it).

I assume this is an ELF related issue, but I really don't know how to
proceed.  I'm trying again, this time using f2c instead of f77 for
fortran, but it would be good to not have to require f2c.

Anyone know what this stuff means?


-Dan