bug-gnuzilla
[Top][All Lists]
Advanced

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

build problem: sparc/solaris 2.8


From: Takakazu SATOH
Subject: build problem: sparc/solaris 2.8
Date: Fri, 18 Jul 2008 00:45:58 +0900 (JST)
User-agent: SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijou) APEL/10.2 Emacs/20.7 (sparc-sun-solaris2.8) MULE/4.0 (HANANOEN)

Dear list,

I have tried to build an icecat under sparc/solaris 2.8 with gcc 4.3.1
and binutils 2.17 without success.  After some modifications (mainly
providing wrappers to non-existing functions in Solaris 2.8 like
floorf), "make" ended up with


gmake[4]: Entering directory 
`/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign'

<<-- snip -->>

gmake[5]: Leaving directory 
`/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign/mangle'
cd SunOS5.8_OPT.OBJ ; sh 
/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign/./sign.sh 
/opt2/local/src/icecat-3-g1/dist \
/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign/SunOS5.8_OPT.OBJ SunOS \
/opt2/local/src/icecat-3-g1/dist/lib 
/opt2/local/src/icecat-3-g1/dist/lib/libsoftokn3.so
/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign/SunOS5.8_OPT.OBJ/shlibsign
 -v -i /opt2/local/src/icecat-3-g1/dist/lib/libsoftokn3.so
NSS_Init failed: Failure to load dynamic library.
gmake[4]: *** [/opt2/local/src/icecat-3-g1/dist/lib/libsoftokn3.chk] Error 1
gmake[4]: Leaving directory 
`/opt2/local/src/icecat-3-g1/security/nss/cmd/shlibsign'

In the following, $T stands for the top directory of a source tree.
I added a call to dlerror() just after dlopen() (line 984) in
$T/nsprpub/pr/src/linking/prlink.c in order to observe what is
wrong. The arguments to dlopen were:
dlopen(/opt2/local/src/icecat-3-g1/dist/lib/libsoftokn3.so, RTLD_NOW | 
RTLD_LOCAL)
The result was:

ld.so.1: shlibsign: fatal: relocation error: file 
/opt2/local/src/icecat-3-g1/dist/lib/libsqlite3.so: symbol main: referenced 
symbol not found

It seems strange for me because
   nm $T/db/sqlite3/src/sqlite3.o | grep main
prints nothing whereas
   nm $T/db/sqlite3/src/libsqlite3.so | grep main
prints certainly
         U main

sqlite3.o is a unique component in libsqlite3.so.
So where does this reference to the undefined symbol main come from?
Even if the reference is what is extended, why the "not found" error was 
generated?
nm $T/security/nss/cmd/shlibsign/SunOS5.8_OPT.OBJ/shlibsign.o | grep main
produces
        00012d94 T main
Thus the symbol main is certainly defined in shlibsign.o (and shlibsign).

Any suggestions and comments are welcome.
I'm sorry if I'm missing simple things.
Thank you in advance.

With best regards,
Takakazu Satoh


p.s. It seems that "make clean" deletes the following source files
written in assembly code.

$T/xpcom/reflect/xptcall/src/md/unix/{xptcinvoke_asm_sparc_solaris_GCC3.s,xptcstubs_asm_sparc_solaris.s}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]