Estoy tratando de construir el analizador de znort987 y he ejecutado sudo apt-get libssl-dev. Puedo ver todo tipo de archivos de encabezado relacionados con SSL en / usr / include / openssl pero opensslconf.h falta en la carpeta openssl y el comando make genera el error:
make: *** No rule to make target `/usr/include/openssl/opensslconf.h', needed by `.objs/rmd160.o'. Stop.
Estoy usando Ubuntu 14.04 en una computadora portátil AMD de 32 bits.
Actualización: ejecuté lo siguiente para limpiar mi instalación:
sudo apt-get remove libssl-dev build-essential g++-4.4 libboost-all-dev libsparsehash-dev git-core perl
sudo apt-get install libssl-dev build-essential g++-4.4 libboost-all-dev libsparsehash-dev git-core perl
git clone git://github.com/znort987/blockparser.git
cd blockparser
make
Ahora obtengo:
/usr/include/openssl/e_os2.h:56:33: fatal error: openssl/opensslconf.h: No such file or directory
sudo dpkg --add-architecture i386
Esto parece haber sucedido hace mucho tiempo (específicamente, 2013-05-20 16:56:06 UTC). Me encontré con un problema extraño que se parecía mucho al OP, pero resultó ser un problema con la falla de Swig al adjuntar el conjunto correcto de inclusiones al compilar. Terminé buscando en la fuente solo para asegurarme de que no era un problema del paquete ubuntu, pero no parecía ser un problema con ubuntu.
Mirando más detenidamente esto, el paquete openssl cambió opensslconf.h a una estructura de directorio compatible con múltiples canales. Aquí está el commit detallado: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/revision/11.1.42 y si quieres ver cómo se me ocurrió esa revisión, yo siguió las revisiones anotadas de las reglas de Debian, que fue una forma sorprendentemente eficiente de averiguar qué sucedió: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/annotate/head:/ debian / rules .
Y el confirmador, Kurt Roeckx, escribe en el Registro de cambios:
Para ser justos, desearía que el opensslconf.h, al menos, estuviera enlazado a la carpeta / usr / include / openssl con el resto de los encabezados relacionados lógicamente. Pero eso no es un error, esa es solo mi opinión. Para las personas que se encuentran con este problema como lo hice yo, solo se necesita un poco de olfateo para evitar que las cosas sigan funcionando.
Y para el OP , es mucho más tarde ahora, pero acabo de dar un vistazo a su conjunto exacto de pasos en una caja 14.04 LTS x64 y no me encontré con el problema que estaba teniendo. Quizás el problema simplemente se resolvió con el tiempo. Espero que algo de esto ayude.
fuente
Parece que el paquete está defectuoso.
<openssl/opensslconf.h>
es creado por elConfigure
comando de OpenSSL . Debe incluirse con los archivos de distribución. La primera mención que pude encontrar fue el CHANGELOG de OpenSSL en la versión 0.9.2 .Presente un informe de error en https://bugs.launchpad.net/ubuntu/+filebug/?no-redirect .
fuente
Parece que es un problema con los sistemas de 32 contra 64 bits. Lo borré todo, descargué y construí Openssl yo mismo, y seguí las instrucciones para construir el analizador. Durante la fase lnk omitió el "libcrypto incompatible" y luego falló.
Por lo tanto, supongo que las bibliotecas necesarias solo están disponibles para sistemas de 64 bits y se omiten durante la instalación de libssl-dev en sistemas de 32 bits. Un mensaje de error más claro sería bueno.
fuente
opensslconf.h
error no encontrado. instaladolibssl-dev
(¿hay una versión de 32 bits de eso?) y todo, excepto mi programa, no se compila debido a la falta del archivo. ¿Algunas ideas?Se ha movido debido al arco múltiple. En amd64 se encuentra en /usr/include/x86_64-linux-gnu/openssl/opensslconf.h
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733644
fuente
Me encontré con este problema al compilar una configuración diseñada para un dispositivo LTS 14 incorporado en la PC LTS 16. Así es como lo resolví:
fuente