GNU/Linux >> Tutoriales Linux >  >> Linux

No se puede encontrar el error de la biblioteca libcrypto

Añadir -L /usr/local/ssl/lib/ en la línea de comandos de GCC, antes del -lcrypto . Dado que está compilando contra los encabezados de OpenSSL en /usr/local/ssl , también debe vincularse con la biblioteca real con el mismo prefijo (aunque parece que solo tiene una estática instalada allí, esa puede ser su intención o no; es posible que deba reinstalar correctamente su OpenSSL compilado desde la fuente).

(editar) Para arreglar el dlopen() y amigos no encontrados por el enlazador, agregue -ldl en la línea de comando GCC. -ldl le dice al enlazador que también enlace contra libdl.so, que es la biblioteca compartida que contiene dlopen() , dlsym() , dlclose() etc.; estas funciones son utilizadas por OpenSSL internamente y, por lo tanto, -ldl es una dependencia indirecta cuando se usa -lcrypto (en Linux). Debido a que está vinculando a una versión estática de libcrypto, debe vincular explícitamente todas las dependencias indirectas.

Si no está familiarizado con la vinculación a las bibliotecas adecuadas, le sugiero que use OpenSSL instalado desde el administrador de paquetes de su sistema operativo; podría ahorrarle algunos problemas.


Esto podría ser relevante para las personas que intentaron compilar su propio openssl desde el código fuente y luego usarlo para compilar otros programas (en mi caso, Git)

Durante la configuración de openssl, agregue la opción 'compartida':

./config shared

Esto creará la biblioteca compartida requerida libcrypto.so . Encontrará más en el archivo INSTALL.

Además, si te encuentras con este error durante 'make'

"....can not be used when making a shared object

recompilar con -fPIC

./config shared -fPIC


Linux
  1. Cómo solucionar el error de configuración:no se puede encontrar el directorio de macros 'm4' [Resuelto]

  2. Error al cargar bibliotecas compartidas libcrypto.so.1.1 – OpenSSL [Fijar]

  3. No se puede encontrar una baseurl válida:error de YumRepo [resuelto]

  4. Error No se puede encontrar [PHP Extension mysqlnd] de OpenSSL

  5. No se puede encontrar pspell:corrige el error de configuración de PHP

¿Cómo corregir el error de instalación de Python al cargar bibliotecas compartidas:libssl.so.1.0.0? [Resuelto]

Error de configuración de phpize:no se pueden encontrar las fuentes (config.m4)

¿No se puede encontrar -lm?

ld no puede encontrar una biblioteca existente

Cómo inicializar una biblioteca compartida en Linux

Error al instalar extundelete-0.2.0 en CentOS 5.6, error:no se puede encontrar la biblioteca ext2fs