web-dev-qa-db-fra.com

Comment installer la dernière version de openssl Mac OS X El Capitan

J'ai utilisé brew install openssl pour télécharger et installer openssl v1.0.2f, cependant, il revient en disant:

A CA file has been bootstrapped using certificates from the system
keychain. To add additional certificates, place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

This formula is keg-only, which means it was not symlinked into /usr/local.

Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/openssl/lib
    CPPFLAGS: -I/usr/local/opt/openssl/include

Et quand je fais openssl version -a cela me donne toujours:

OpenSSL 0.9.8zg 14 July 2015
built on: Jul 31 2015
platform: darwin64-x86_64-llvm
options:  bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) blowfish(idx) 
compiler: -Arch x86_64 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -O3 -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DMD32_REG_T=int -DOPENSSL_NO_IDEA -DOPENSSL_PIC -DOPENSSL_THREADS -DZLIB -mmacosx-version-min=10.6
OPENSSLDIR: "/System/Library/OpenSSL"

Comment puis-je remplacer l'ancienne version par la nouvelle? J'ai beaucoup cherché comment faire cela, mais les solutions en ligne ne semblent pas fonctionner pour moi ...

35
Tometoyou

Seulement

export PATH=$(brew --prefix openssl)/bin:$PATH in ~/.bash_profile

a travaillé pour moi! Merci mipadi.

25
Olivier

Exécutez les commandes suivantes:

brew update
brew install openssl
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile

La dernière version d’openssl sera installée et accessible à partir de cli (ligne de commande/terminal). Étant donné que la troisième commande ajoute le chemin d'exportation à .bash_profile, la version nouvellement installée d'OpenSSL sera accessible lors des redémarrages du système.

24
shaunthomas999

Essayez de créer un lien symbolique, assurez-vous d’abord d’installer openssl dans /usr/local/include.

ln -s /usr/local/Cellar/openssl/{version}/include/openssl /usr/local/include/openssl

Plus d'infos sur Openssl avec El Capitan .

6
zlwaterfield

J'ai atteint cette page lorsque j'ai recherché des informations sur openssl étant uniquement réservées aux fûts. Je crois avoir compris la raison pour laquelle Homebrew prend cette mesure maintenant. Ma solution peut fonctionner pour vous:

  • Utilisez la commande suivante pour rendre la nouvelle commande openssl disponible (en supposant que vous ayez ajusté PATH pour mettre/usr/local/bin avant/usr/bin): ln -s /usr/local/opt/openssl/bin/openssl /usr/local/bin/

  • Lors de la compilation avec openssl, suivez les conseils de Homebrew et utilisez -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

  • Vous pouvez également rendre ces paramètres permanents en insérant les lignes suivantes dans votre fichier .bash_profile ou .bashrc: export CPATH=/usr/local/opt/openssl/include export LIBRARY_PATH=/usr/local/opt/openssl/lib

2
Yongwei Wu

Je ne peux pas reproduire votre problème sous El Cap + Homebrew 1.0.x

Mise à niveau vers Homebrew 1.0.x, publié fin septembre. Des modifications spécifiques ont été apportées à la manière dont openssl est lié . Le projet est sur un calendrier de publication plus robuste maintenant qu'il a atteint 1.0.

brew uninstall openssl
brew update && brew upgrade && brew cleanup && brew doctor

Vous devez résoudre tous les problèmes soulevés par brew doctor avant de poursuivre.

brew install openssl

Remarque: La mise à niveau de homebrew mettra à jour tous vos paquets installés à leur dernier versions.

1
Wade Williams