bibliotecas de enlace dinámico por lo que algunos de los problemas al compilar el programa

en proceso de desarrollo de Linux, que a menudo llamamos la DLL de terceros, es posible que a menudo encuentro no puede encontrar LXXX error similar.

Hay tres posibles general, este tipo de error.

En primer lugar, no existe un programa de biblioteca correspondiente del ordenador en el momento de la biblioteca de vínculos dinámicos que no se encuentra de forma natural. Es no confirma este problema es muy simple, utilice el comando de búsqueda para buscar. Si no, el programa se puede instalar de manera correspondiente.

En segundo lugar, hay una biblioteca correspondiente del ordenador, pero no en el catálogo compilado en el directorio donde la búsqueda. General / lib y / usr / lib búsqueda de directorio se fija en tiempo de compilación, y generalmente / usr / local / lib local no es el directorio de búsqueda predeterminado. Para resolver este problema es muy simple: un aumento en el makefile para compilar una búsqueda de directorio, se realiza por medio de directorio -L, como -L / usr / local / lib local. Dos: el modo copiado a la búsqueda en el directorio del sistema, pero el sistema de búsqueda son algunos de catálogo general del sistema de la biblioteca no se recomienda para copiar su biblioteca al directorio, de modo caótico. Tres: Agregar directorio de búsqueda, crear un archivo, por ejemplo, en el directorio opencv.conf /etc/ld.so.conf.d/, a continuación, añadir la ruta de archivo .so en el archivo, como por ejemplo / usr / CAN / lib locales a. Diferencias tercera realización y la primera realización es que el primer cambio de la corriente compilador de lista de exploración, y el tercer cambio es que todos los sistemas en la lista de exploración compilador.

En tercer lugar, está la biblioteca correspondiente, catálogo de la biblioteca también compilado directorio de búsqueda en su ordenador. Esta situación se parece generalmente en el ordenador sólo libxxx.so.xx.xx.xx, sin libxxx.so. El sistema es por lo general cuando se busca libxxx.so de búsqueda, que no sería buscar el archivo DLL. La solución es simple, crear un enlace simbólico, que apunta a un nuevo libxxx.so libxxx.so.xx.xx.xx presente en el equipo.

En general, los tres métodos anteriores, que pueden resolver el problema no puede encontrar las librerías dinámicas.

Publicado 12 artículos originales · ganado elogios 4 · Vistas a 20000 +

Supongo que te gusta

Origin blog.csdn.net/wuzhidefeng/article/details/103053287
Recomendado
Clasificación