[Top][All Lists]
[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}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- build problem: sparc/solaris 2.8,
Takakazu SATOH <=