What does it say if you unset LD_LIBRARY_PATH and you run:
in reply to Can't use DBD::Oracle if LD_LIBRARY_PATH Not Set In Environment
If the results point to locations that don't exist, then likely your DBD::Oracle was compiled on a different system where libraries were in a different place. Now you have to set LD_LIBRARY_PATH to specify where they are on your system.
Update: Or compile DBD::Oracle on your current system so that the Oracle.so file knows where it's libraries are. On HP-UX you can use chatr to change the paths to libraries in a .so file...don't know if the same exists on solaris (don't think so). If you're really brave, maybe you can edit the paths in the .so binary yourself :-)