Typo
[linux_from_scratch_hints.git] / OLD / netscape.txt
blobe5ec24e4272c11f3f56127e53cb268c026153489
1 TITLE:          Netscape 4.72+
2 LFS VERSION:    any
3 AUTHOR:         unknown <unknown>
5 SYNOPSIS:
6         How to fix the missing library problem while installing Netscape 4.72 (as of v. 4.74, the problem still hasn't been fixed, and therefore this hint is very useful (but the soname has to be changed to the name of the missing library)).
8 HINT:
9 Here is a little trick I discovered while trying to get 
10 Netscape Communicator 4.72 running on my LFS system.
12 If you do a ldd on the binary, you will see that libstdc++-libc6.1-1.so.2 
13 is not found. 
15 A simple Symbolic link between your actual Standard-C++ Library and 
16 the missing one in Netscape is reported to work, so a simple
18 cd /usr/lib
19 ln -s libstdc++-3-libc6.2-2-2.10.0.so libstdc++-libc6.1-1.so.2
21 should do the trick.
22 Make sure that the first file is your Standard C++ lib (ls libstdc++*)
23 and the second on matches the filename your Netscape is missing.
25 Another Way of doing it:
27 The solution can be found in the egcs.spec file from the 
28 Redhat 6.2 SRPMS CD. Here is the procedure for those that don't have the CD.
30 Quoted directly from the spec file:
32 # build a fake libstdc++.so.2.9 library for compatibility with other distros
33 pushd $RPM_BUILD_ROOT/usr/lib ; {
34         touch foo.c
35         ../bin/g++ -fPIC -L. -shared -o libstdc++.so.2.9.dummy \
36                 -Wl,-soname,libstdc++.so.2.9
37         rm -f foo.c
38 } ; popd
40 Of course the soname is changed, so the steps become:
42 g++ -fPIC -L. -shared -o libstdc++-2-libc6.1-1-2.9.0.so \
43 -Wl,-soname,libstdc++-2-libc6.1-1-2.9.0.so
45 then run /sbin/ldconfig as root.
47 I did this on my normal system, 
48 where I have two versions of libstdc++, the RH 6.2 version and the
49 gcc-2.95.2 (patched to pgcc) version. 
50 I moved the RH version out of the way and installed the dummy
51 library. Netscape continues to work. I didn't try this on the LFS system yet.