ATENTIE, am manarit referintele la librarii (vezi /etc/ld.so.conf). Vezi Library rpath si Library runpath cu:
readelf -d /usr/sbin/httpd
http://en.wikipedia.org/wiki/Rpath: At run time, if the dynamic linker finds a DT_RUNPATH attribute, it ignores the value of the DT_RPATH attribute, with the effect that LD_LIBRARY_PATH is checked next and the paths in the DT_RUNPATH attribute are only searched after it. This means that in such configurations, the paths in LD_LIBRARY_PATH are searched before those given at link time using -rpath if –enable-new-dtags was active. The ld dynamic linker does not search DT_RUNPATH locations for transitive dependencies, unlike DT_RPATH. [3] Instead of specifying the -rpath to the linker, the environment variable LD_RUN_PATH can be set to the same effect. http://man7.org/linux/man-pages/man8/ld.so.8.html:
If a library dependency does not contain a slash, then it is searched for in the following order: o (ELF only) Using the directories specified in the DT_RPATH dynamic section attribute of the binary if present and DT_RUNPATH attribute does not exist. Use of DT_RPATH is deprecated. o Using the environment variable LD_LIBRARY_PATH. Except if the executable is a set-user-ID/set-group-ID binary, in which case it is ignored. o (ELF only) Using the directories specified in the DT_RUNPATH dynamic section attribute of the binary if present. o From the cache file /etc/ld.so.cache, which contains a compiled list of candidate libraries previously found in the augmented library path. If, however, the binary was linked with the -z nodeflib linker option, libraries in the default library paths are skipped. Libraries installed in hardware capability directories (see below) are preferred to other libraries. o In the default path /lib, and then /usr/lib. If the binary was linked with the -z nodeflib linker option, this step is skipped.
a) ldd /usr/sbin/httpd initial arata libc.so.6 => not found
ln -s /ffp/lib/libc.so.0 /ffp/lib/libc.so.6 ln -s /ffp/lib/libc.so /ffp/lib/libc.so.6 ln -s /lib/libc.so.6 /ffp/lib/libc.so.6
iar acum arata libc.so.6 => /ffp/lib/libc.so.6 La fel pentru:
ln -s /ffp/lib/libdl-0.9.33.2.so /ffp/lib/libdl.so.2 ln -s /ffp/lib/libcrypt-0.9.33.2.so /ffp/lib/libcrypt.so.1 ln -s /ffp/lib/librt-0.9.33.2.so /ffp/lib/librt.so.1 ln -s /ffp/lib/libm-0.9.33.2.so /ffp/lib/libm.so.6 ln -s /ffp/lib/libcrypto.so.1.0.0 /ffp/lib/libcrypto.so.0.9.8 ln -s /ffp/lib/libssl.so.1.0.0 /ffp/lib/libssl.so.0.9.8
Nu e bine sa las links de mai sus pt ca in caz de update a so referitele acestor links nu se updateaza: rm /ffp/lib/libc.so.6 /ffp/lib/libdl.so.2 /ffp/lib/libcrypt.so.1 /ffp/lib/librt.so.1 /ffp/lib/libm.so.6 /ffp/lib/libcrypto.so.0.9.8 /ffp/lib/libssl.so.0.9.8