web-dev-qa-db-fra.com

gem installation échoue avec échec openssl

J'ai essayé d'installer des cocoapods ( http://cocoapods.org/ ) sur mon OSX Mountain Lion.

 moshe-mbp:~ moshem$ gem install cocoapods
 ERROR:  Could not find a valid gem 'cocoapods' (>= 0), here is why:
      Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0      state=SSLv3 read server key exchange B: bad ecpoint (https://rubygems.org/latest_specs.4.8.gz)

d'abord j'ai essayé

 rvm reinstall all --force

alors j'ai essayé 

 brew upgrade openssl

    ==> Upgrading openssl
    ==> Downloading http://openssl.org/source/openssl-1.0.1e.tar.gz
    Already downloaded: /Library/Caches/Homebrew/openssl-1.0.1e.tar.gz
    ==> Perl ./Configure --prefix=/usr/local/Cellar/openssl/1.0.1e --openssldir=/usr/local/etc/openssl zlib-dynamic shared d
    ==> make
    ==> make test
    ==> make install MANDIR=/usr/local/Cellar/openssl/1.0.1e/share/man MANSUFFIX=ssl
    ==> Caveats
    To install updated CA certs from Mozilla.org:

        brew install curl-ca-bundle

    This formula is keg-only: so it was not symlinked into /usr/local.

    Mac OS X already provides this software and installing another version in
    parallel can cause all kinds of trouble.

    The OpenSSL provided by OS X is too old for some software.

    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

    ==> Summary
    ????  /usr/local/Cellar/openssl/1.0.1e: 429 files, 15M, built in 5.1 minutes

J'ai ensuite essayé

openssl version

et toujours (!) obtient l'ancienne version

moshe-mbp:~ moshem$ openssl version
OpenSSL 0.9.8r 8 Feb 2011
moshe-mbp:~ moshem$ 

qu'est-ce que je fais mal? Comment puis-je installer la gemme cocoapods?

merci


EDIT, essayez la suggestion @sean:

moshe-mbp:~ moshem$ brew update
Updated Homebrew from 672af665 to 10b4d426.
==> Updated Formulae
bash        wireshark
moshe-mbp:~ moshem$ brew install openssl
Error: openssl-1.0.1e already installed
moshe-mbp:~ moshem$ brew link openssl --force
Linking /usr/local/Cellar/openssl/1.0.1e... 1139 symlinks created
moshe-mbp:~ moshem$ brew install curl-ca-bundle
Error: curl-ca-bundle-1.87 already installed
moshe-mbp:~ moshem$ 
moshe-mbp:~ moshem$ openssl version
OpenSSL 0.9.8r 8 Feb 2011
moshe-mbp:~ moshem$ gem install cocoapods
ERROR:  Could not find a valid gem 'cocoapods' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server key exchange B: bad ecpoint (https://rubygems.org/latest_specs.4.8.gz)

EDIT (2) après avoir réglé les problèmes avec le médecin de la brasserie

moshe-mbp:~ moshem$ gem install cocoapods
ERROR:  Could not find a valid gem 'cocoapods' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server key exchange B: bad ecpoint (https://rubygems.org/latest_specs.4.8.gz)
moshe-mbp:~ moshem$ openssl version
OpenSSL 0.9.8r 8 Feb 2011
moshe-mbp:~ moshem$ brew update
Updated Homebrew from 10b4d426 to 6a00bc3c.
==> Updated Formulae
clozure-cl  python  python3
moshe-mbp:~ moshem$ brew install openssl
Error: openssl-1.0.1e already installed
moshe-mbp:~ moshem$ 
moshe-mbp:~ moshem$ echo $PATH
/Users/moshem/.rvm/gems/Ruby-2.0.0-p0/bin:/Users/moshem/.rvm/gems/Ruby-2.0.0-p0@global/bin:/Users/moshem/.rvm/rubies/Ruby-2.0.0-p0/bin:/Users/moshem/.rvm/bin:/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/tools:/platforms:/platform-tools:
moshe-mbp:~ moshem$ 

EDIT après avoir modifié les chemins/etc /

J'ai édité les fichiers/etc/path pour:

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

terminal complètement fermé et rouvert et il lance toujours l'ancienne version de openssl!

pourquoi?

moshe-mbp:~ moshem$ env $PATH
env: /Users/moshem/.rvm/gems/Ruby-2.0.0-p0/bin:/Users/moshem/.rvm/gems/Ruby-2.0.0-p0@global/bin:/Users/moshem/.rvm/rubies/Ruby-2.0.0-p0/bin:/Users/moshem/.rvm/bin:/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/tools:/platforms:/platform-tools

EDIT, mon bash_profile

source "`brew --prefix grc`/etc/grc.bashrc"

export PATH=${Java_HOME}/bin:$PATH
export PATH="$PATH:$Android_SDK/tools:$Android_SDK/platforms:$Android_SDK/platform-tools:$Android_NDK"

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a Shell session *as a function*

En passant, le fichier /etc/grc.bashrc ne semble pas exister sur ma machine. cette ligne et la ligne RVM à la fin ont été ajoutées par les scripts installés


MODIFIER

moshe-mbp:~ moshem$ rvm pkg install openssl 
Fetching openssl-1.0.1c.tar.gz to /Users/moshem/.rvm/archives
Extracting openssl to /Users/moshem/.rvm/src/openssl-1.0.1c
Configuring openssl in /Users/moshem/.rvm/src/openssl-1.0.1c.
Compiling openssl in /Users/moshem/.rvm/src/openssl-1.0.1c.
Installing openssl to /Users/moshem/.rvm/usr

Please note that it's required to reinstall all rubies:

    rvm reinstall all --force

Updating openssl certificates
moshe-mbp:~ moshem$ openssl version
OpenSSL 1.0.1e 11 Feb 2013


moshe-mbp:~ moshem$ gem source -r http://rubygems.org/
http://rubygems.org/ removed from sources
moshe-mbp:~ moshem$ gem source -a https://rubygems.org/
Error fetching https://rubygems.org/:
    SSL_connect returned=1 errno=0 state=SSLv3 read server key exchange B: bad ecpoint (https://rubygems.org/specs.4.8.gz)
moshe-mbp:~ moshem$ gem install cocoapods
ERROR:  Could not find a valid gem 'cocoapods' (>= 0) in any repository
57
Moshe Marciano

Ce problème est résolu en évitant https et en utilisant plutôt le protocole http non sécurisé. Courir cela a fonctionné pour moi. 

gem source -a http://rubygems.org/
77
Ackshaey Singh
rvm osx-ssl-certs update all

a fait le tour pour moi, Ruby 2.0.0

53
antpaw

Essayez d’utiliser http://rubygems.org/ (sans SSL) comme source - cela corrige l’erreur pour moi.

gem source -r https://rubygems.org/
gem source -a http://rubygems.org/
gem install cocoapods
37
Ernests Karlsons

La version actuelle de rvm fait beaucoup mieux la gestion de ces choses, lancez:

rvm get head
rvm reload
rvm autolibs enable
rvm reinstall 1.9.3 --disable-binary

Assurez-vous de suivre toutes les instructions affichées - tout est là pour vous aider.

25
mpapis

Voici ce qui m'a résolu le problème: Installez ce certificat: https://raw.githubusercontent.com/rubygems/rubygems/master/lib/rubygems/ssl_certs/AddTrustExternalCARoot-2048.pem

Dans ce dossier: {Rubyfolder}\lib\Ruby\2.1.0\rubygems\ssl_certs

De cette façon, vous n’aurez pas à ajouter de sources non sécurisées.

Plus d'informations ici: https://Gist.github.com/luislavena/f064211759ee0f806c88

10
gijswijs

J'ai eu la même erreur. Pour résoudre ce problème, exécutez simplement les commandes suivantes (je sais que vous en avez déjà exécuté quelques-unes, mais humournez moi)

brew update
brew install openssl
brew link openssl --force
brew install curl-ca-bundle

Après cela, ouvrez un nouveau Shell ou sourcez vos fichiers et tout devrait être bien aller :)

METTRE À JOUR:

Pour mettre à jour vos chemins, vous devez éditer votre fichier/etc/path, donc procédez comme suit:

Sudo vim /etc/paths

Dans il devrait ressembler à quelque chose comme:

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

Ce que vous voulez faire est de vous assurer que /usr/local/bin est en haut du fichier. Alors changez-le en quelque chose comme:

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

J'espère que ça corrige ça!

10
Sean

Si vous êtes en Chine ????????, Essayez d’utiliser http://Ruby.taobao.org/ comme source - cela a corrigé l’erreur pour moi . En même temps temps, évitez https. Courir cela a fonctionné pour moi.

gem sources --remove https://rubygems.org/
gem sources -a http://Ruby.taobao.org/
gem install cocoapods
5
ElonChan

Ce qui suit a tout fonctionne pour moi!

rvm get stable

brew update

brew install libyaml
brew install pkg-config 
brew install libxml2 
brew install libxslt

brew install openssl
brew link openssl --force

brew install sqlite

brew install Apple-gcc42

rvm install 2.0.0 --with-gcc=gcc-4.2

Si cela ne fonctionne pas, supprimez vos rubygems existants et suivez ceci:

rvm remove 2.0.0
rvm get head --autolibs=3
rvm requirements

#At this point, brew install anything that's missing, like Apple-gcc42.

rvm install 2.0.0 --with-gcc=gcc-4.2
4
Scotty

Vous pouvez d’abord installer un plus récent openssl, comme l’a décrit Mike Slutsky . Pour vérifier votre version de openssl:

$ openssl version

Obtenez-en un plus récent ici: http://www.openssl.org/source/ Configurez-le et installez-le:

$ cd openssl-1.0.1f_src/
$ ./Configure --prefix=/Users/me/bin/openssl-1.0.1f_bin darwin64-x86_64-cc
$ make install

Maintenant, configurez Ruby avec cette openssl:

$ cd Ruby-2.1.0_src/
$ ./configure --with-openssl-dir=/Users/me/bin/openssl-1.0.1f_bin --prefix=/Users/me/bin/Ruby-2.1.0_bin

Note: le nouvel openssl n'a pas besoin d'être sur vous $ PATH ..__ Cela a fonctionné pour moi avec Ruby 2.0 et 2.1. Bonne chance (-:

2
Jan Hegewald

Vous pouvez essayer de mettre à jour OpenSSL à partir du source:

curl -L -O http://www.openssl.org/source/openssl-1.0.1b.tar.gz.asc
curl -L -O http://www.openssl.org/source/openssl-1.0.1b.tar.gz
gpg --verify openssl-1.0.1b.tar.gz.asc
tar xvzf openssl-1.0.1b.tar.gz
cd openssl-1.0.1b
Perl ./Configure shared zlib --prefix=/opt/local darwin64-x86_64-cc
make
make test
Sudo make install

la source

1
Mike S

Je l'ai corrigé en ajoutant seulement la variable PATH dans mon ~/.bash_profile, ce qui dans mon cas impliquait de changer

export PATH="/usr/local/mysql/bin:$PATH"
export PATH=$M2:$PATH
export PATH=$Java_HOME/bin:$PATH

à 

export PATH="$PATH:/usr/local/mysql/bin"
export PATH=$PATH:$M2
export PATH=$PATH:$Java_HOME/bin

Dans le terminal, tapez nano ~/.bash_profile pour commencer l’édition.

0
BrianHenryIE