Estoy tratando de construir un código en Ubuntu 10.04 LTS que usa OpenSSL 1.0.0. Cuando ejecuto make, invoca g ++ con la opción "-lssl". La fuente incluye:
#include <openssl/bio.h>
#include <openssl/buffer.h>
#include <openssl/des.h>
#include <openssl/evp.h>
#include <openssl/pem.h>
#include <openssl/rsa.h>
Corrí:
$ sudo apt-get install openssl
Reading package lists... Done
Building dependency tree
Reading state information... Done
openssl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Pero supongo que el paquete openssl no incluye la biblioteca. Recibo estos errores en make:
foo.cpp:21:25: error: openssl/bio.h: No such file or directory
foo.cpp:22:28: error: openssl/buffer.h: No such file or directory
foo.cpp:23:25: error: openssl/des.h: No such file or directory
foo.cpp:24:25: error: openssl/evp.h: No such file or directory
foo.cpp:25:25: error: openssl/pem.h: No such file or directory
foo.cpp:26:25: error: openssl/rsa.h: No such file or directory
¿Cómo instalo la biblioteca OpenSSL C ++ en Ubuntu 10.04 LTS?
Hice una man g++
y (en "Opciones para vincular") para la opción -l dice: "El vinculador busca una lista estándar de directorios para la biblioteca ..." y "Los directorios buscados incluyen varios directorios de sistema estándar ..." ¿Cuáles son esos directorios del sistema estándar?
-dev
convención de nomenclatura. También puede usar el synaptic
administrador de paquetes para enumerar todos los paquetes cuyos nombres contienen libssl; examinar esa lista y sus descripciones probablemente le darán la pista.
apt-cache search package-name