¿Cómo instalar libssl-dev, libffi-dev en Mac os?


18

Puedo instalar libssl-devy libffi-deven Ubuntu con el comando apt-get install libssl-dev libffi-dev, pero no puedo instalar en Mac; He intentado usar el comando: brew install libssl-dev libffipero no funciona para mí.

¿Qué debo hacer para que homebrew instale esto?


Respuestas:


18

Esos paquetes particulares no existen bajo esos nombres tanto en MacPorts como en Homebrew, de ahí los errores que está recibiendo. Para instalar estos paquetes particulares en OS X, querrás usarlos openssl. El siguiente comando debería ayudarte:

brew install openssl

Si ya lo ha opensslinstalado, intente ejecutar lo siguiente para repararlo: algunos usuarios de Stack Overflow informaron que esto es una solución cuando intentan que Django funcione.

brew unlink openssl && brew link openssl --force

¿Cómo lo haces sin cerveza y sin sudo?
tommy.carstensen

2
opensslNo es lo mismo que libssl-dev. El primero es para uso directo, el segundo es para vincular. UPD: ok, para Mac están agrupados en un solo paquete, pero debes ejecutarloexport LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"
Imaskar

9

Estaba tratando de despegar a Crystal en MacOS Mojave y me encontré con un problema similar.

Este es el mensaje de error que estaba viendo:

Error: execution of command failed with code: 1: `cc "${@}" -o '/Users/mymbp/.cache/crystal/crystal-run-server.tmp'  -rdynamic  
`command -v pkg-config > /dev/null && pkg-config --libs --silence-errors libssl || printf %s '-lssl -lcrypto'` `command -v pkg-config > /dev/null && pkg-config --libs
 --silence-errors libcrypto || printf %s '-lcrypto'` -lz -lpcre -lgc -lpthread 
/usr/local/Cellar/crystal/0.27.0/src/ext/libcrystal.a -levent -liconv -ldl -
L/usr/lib -L/usr/local/lib`

Al buscar / usr / local / lib , noté que no se mencionaba libssl.

Así que agregué un enlace simbólico y eso pareció solucionarlo.

ln -s /usr/local/Cellar/openssl/1.0.2p/lib/libssl.dylib /usr/local/lib/

Nota: La versión actual de openssl que brew drops es 1.0.2p, su versión puede ser diferente.


77
Problema similar, con el cristal también. Pude export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/y lo ejecuté
Jay Dorsey

1

opensslya estaba instalado, pero no pude construir psycopg2porque se quejaba de que faltaba -lssl. Seguí los pasos de Simon Sheehan pero todavía no estaba disponible.

Pero mirando el mensaje después de forzar el enlace openssl:

For compilers to find openssl@1.1 you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

Entonces hice lo que dice. He agregado esas dos líneas en mi ~/.bashrc. Y psycopg2construido sin errores esta vez.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.