Hi,
This is regarding the library names that ubuntu keeps.
I have installed the mozilla NSS libraries n my Ubuntu Hardy
using apt-get install
I see libnss3-0d
libnss3-1d
libnss3-1d-dbg
libnss3-dev
etc.
I have the following in my /usr/lib
lrwxrwxrwx 1 root root
13 2008-07-17 16:47 libnss3.so -> libnss3.so.1d
lrwxrwxrwx 1 root root
13 2008-07-17 16:47 libnss3.so.0d -> libnss3.so.1d
-rw-r--r-- 1 root root 1156684 2008-05-29 02:52
libnss3.so.1d
lrwxrwxrwx 1 root root
23 2008-07-07 16:00 libnss_compat.so -> /lib/libnss_compat.so.2
-rw-r--r-- 1 root root 18876 2008-01-18
03:44 libnss_db-2.2.3.so
lrwxrwxrwx 1 root root
14 2008-07-17 16:47 libnss_db.so -> libnss_db.so.2
lrwxrwxrwx 1 root root
18 2008-07-17 16:47 libnss_db.so.2 -> libnss_db-2.2.3.so
lrwxrwxrwx 1 root root
20 2008-07-07 16:00 libnss_dns.so -> /lib/libnss_dns.so.2
-rw-r--r-- 1 root root 8452
2007-05-18 05:57 libnss_extrausers.so.2
lrwxrwxrwx 1 root root
22 2008-07-07 16:00 libnss_files.so -> /lib/libnss_files.so.2
lrwxrwxrwx 1 root root
23 2008-07-07 16:00 libnss_hesiod.so -> /lib/libnss_hesiod.so.2
-rw-r--r-- 1 root root 33652 2008-02-01 21:08
libnss_ldap.so.2
lrwxrwxrwx 1 root root
24 2008-07-07 16:00 libnss_nisplus.so -> /lib/libnss_nisplus.so.2
lrwxrwxrwx 1 root root
20 2008-07-07 16:00 libnss_nis.so -> /lib/libnss_nis.so.2
lrwxrwxrwx 1 root root
17 2008-07-17 16:47 libnssutil3.so -> libnssutil3.so.1d
lrwxrwxrwx 1 root root
17 2008-07-17 16:47 libnssutil3.so.0d -> libnssutil3.so.1d
Whereas my other Linux box which has Suse 10 on it
has only libnss3.so, libnspr4.so and all.
What are libnss3.so.[0d,1d] etc?
The problem I am facing is when I build my program on
ubuntu linking to nss and nspr it works fine on Ubuntu but when I try to use
the same library built on Ubuntu on Suse its unable to resolve the symbols and
I get the following messages When I do 'ld' on the library.
ld: warning: libssl3.so.1d, needed by **** not found (try
using -rpath or -rpath-link)
ld: warning: libnss3.so.1d, needed by **** not found (try
using -rpath or -rpath-link)
ld: warning: libnspr4.so.0d, needed by **** not found
(try using -rpath or -rpath-link)
and then the messages like
: undefined reference to `NSS_InitReadWrite@xxxxxxx'
: undefined reference to `CERT_GetDefaultCertDB@xxxxxxx'
: undefined reference to `SSL_ForceHandshake@xxxxxxx'
: undefined reference to `PR_Initialized'
: undefined reference to `SSL_OptionSet@xxxxxxx'
Does this mean that I cant use the same binary on other Linux
which were built on ubuntu?
Why is Ubuntu using non-standard names for libraries?
Thanks