example:
failed: Can't load '/app/teamsite/iw-perl/site/lib/auto/DBD/Oracle/
Oracle.so' for module DBD::Oracle: ld.so.1: perl: fatal: libnnz10.so: open failed: No such
file or directory at /app/teamsite/iw-perl/lib/DynaLoader.pm line 229.
solution:
All these .so problems seem to be have a common solution. You need tell unix where to look for your libraries. This is how you do it.
- Figure out where your application has its .so files. Usually this is in a directory called lib, and it usually contains more then one .so file.
- You need to become root, and run this command:
- crle
- write down everything which is output, because if you break things you will need to go back to this. On solaris 10 this is the important piece which has to always be in the output: Default Library Path (ELF): /usr/lib
- Now we need to add our library locations to the Default Library Path, run this as root:
- crle -c /var/ld/ld.config -l /usr/lib:/your/directory/where/the/so/files/are
- exit root
crle -c /var/ld/ld.config -l /usr/lib:/your/directory/where/the/so/files/are:/another/lib/path
Important: if you remove the /usr/lib part from the Default Library Path, shit will hit the fan.
Use this at your own risk.
No comments:
Post a Comment