En el 'use lib' no debes poner la ruta completa la librería, sino la ruta completa al
directorio que contiene la librería.
Así:
use lib '/opt/.../sdk/perl/5.6/site/lib/';Y luego tienes que cargarla:
use libreria;Si el directorio '/opt/.../sdk/perl/5.6/site/lib/' es uno de los que contiene la variable @INC (compruébalo con el comando
perl -V), entonces no te hace falta poner el 'use lib'. Lo que hace 'use lib' es
añadir el directorio que le pasas como argumento, a la variable
@INC.
Y luego, lo siguiente más importante, es cargarla, con 'use libreria;'.
Como casi siempre, hasta que no publicas el código del programa, no nos damos cuenta de qué es lo que puede pasar.
jmdelcampo escribiste:Can't locate loadable object for module infovista in @INC (@INC contains: /usr/local/ActivePerl-5.6/lib/5.6.1/sun4-solaris-thread-multi /usr/local/ActivePerl-5.6/lib/5.6.1 /usr/local/ActivePerl-5.6/lib/site_perl/5.6.1/sun4-solaris-thread-multi /usr/local/ActivePerl-5.6/lib/site_perl/5.6.1 /usr/local/ActivePerl-5.6/lib/site_perl .)
Acabo de darme cuenta de que este error
quiere decir que el módulo infovista necesita de una biblioteca externa (un fichero .so, .dll, etc) que DynaLoader no puede cargar.
Así que, además de colocar el .pm, debes colocar esa librería.
Te recomiendo que leas las
instrucciones de instalación de dicha librería.