Closed Bug 317858 Opened 19 years ago Closed 18 years ago

linking libfreebl3.so fails on Linux ppc and ppc64

Categories

(NSS :: Build, defect, P1)

3.11
x86
Linux
defect

Tracking

(Not tracked)

RESOLVED FIXED
3.11.1

People

(Reporter: wolfiR, Assigned: wtc)

Details

Attachments

(1 file)

gcc -shared  -z defs -Wl,-soname -Wl,libfreebl3.so -Wl,--version-script,Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/freebl.def -o Linux2.6_ppc_
glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/libfreebl3.so Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/freeblver.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux
_SINGLE_SHLIB/ldvector.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/prng_fips1861.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/sysrand.
o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/sha_fast.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/md2.o Linux2.6_ppc_glibc_PTH_OPT.OBJ
/Linux_SINGLE_SHLIB/md5.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/sha512.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/alghmac.o Linu
x2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/rawhash.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/alg2268.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Li
nux_SINGLE_SHLIB/arcfour.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/arcfive.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/desblapi.o L
inux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/des.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/rijndael.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Li
nux_SINGLE_SHLIB/aeskeywrap.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/dh.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/ec.o Linux2.6_
ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/pqg.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/dsa.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SH
LIB/rsa.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/shvfy.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/tlsprfalg.o Linux2.6_ppc_glibc_
PTH_OPT.OBJ/Linux_SINGLE_SHLIB/mpprime.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/mpmontg.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLI
B/mplogic.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/mpi.o Linux2.6_ppc_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/mp_gf2m.o Linux2.6_ppc_glibc_PT
H_OPT.OBJ/Linux_SINGLE_SHLIB/mpcpucache.o   ../../../../dist/Linux2.6_ppc_glibc_PTH_OPT.OBJ/lib/libsecutil.a -L/usr/lib -lplc4 -lplds4 -lnspr4  -lpth
read  -ldl -lc
gcc: defs: No such file or directory
Wolfgang: in mozilla/security/coreconf/Linux.mk at line 168,
please try changing

 DSO_LDOPTS              = -shared $(ARCHFLAG) -z defs

to

 DSO_LDOPTS              = -shared $(ARCHFLAG) -Wl,-z,defs

What's the output of 'gcc -v' on that system?

The gcc versions we tested accept the "-z defs" linker option
directly.  We only tested on the x86 and x86_64 architectures.
 
Priority: -- → P1
Target Milestone: --- → 3.11.1
(In reply to comment #1)
> Wolfgang: in mozilla/security/coreconf/Linux.mk at line 168,
> please try changing
> 
>  DSO_LDOPTS              = -shared $(ARCHFLAG) -z defs
> 
> to
> 
>  DSO_LDOPTS              = -shared $(ARCHFLAG) -Wl,-z,defs

With that change everything is OK.

> What's the output of 'gcc -v' on that system?

gcc version 4.1.0 20051123 (prerelease) (SUSE Linux)
It also fails with 4.0.2_20050901 on SUSE Linux 10.0 for PPC
Status: NEW → ASSIGNED
Attached patch Proposed patchSplinter Review
For some reason, the GCC for ppc in both the Fedora Core/Red Hat
and SuSE Linux distributions does not recognize the -z defs linker
option, so we need to use the -Wl compiler flag to pass -z defs to
the linker.
Attachment #206009 - Flags: superreview?(julien.pierre.bugs)
Attachment #206009 - Flags: review?(caillon)
Comment on attachment 206009 [details] [diff] [review]
Proposed patch

r=caillon; and verified to work
Attachment #206009 - Flags: review?(caillon) → review+
Comment on attachment 206009 [details] [diff] [review]
Proposed patch

I checked in this patch on the NSS trunk (NSS 3.12).

Checking in Linux.mk;
/cvsroot/mozilla/security/coreconf/Linux.mk,v  <--  Linux.mk
new revision: 1.28; previous revision: 1.27
done

The fix on the NSS_3_11_BRANCH will be combined with
the fix for bug 323196.
Attachment #206009 - Flags: superreview?(julien.pierre.bugs)
This has been fixed on the NSS_3_11_BRANCH.
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: