gem install fails with openssl failure



Я пытался установить cocoapods (http://cocoapods.org/) на моем 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)


сначала я пробовал



 rvm reinstall all --force


затем я попробовал



 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
646   11  

11 ответов:

это исправлено, избегая https и используя небезопасный http вместо этого. Запуск этого работал для меня.

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

сделал трюк для меня, Руби 2.0.0

попробуйте использовать http://rubygems.org/ (без SSL) в качестве источника - это исправило ошибку для меня.

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

текущая версия rvm делает намного лучшую работу с этими вещами, запустите:

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

обязательно следуйте инструкциям на экране-это все, чтобы помочь вам.

вот что решило это для меня: Установите этот сертификат: https://raw.githubusercontent.com/rubygems/rubygems/master/lib/rubygems/ssl_certs/AddTrustExternalCARoot-2048.pem

в этой папке: {rubyfolder}\lib\ruby\2.1.0\rubygems\ssl_certs

таким образом, вам не нужно добавлять небезопасные источники.

дополнительная информация здесь:https://gist.github.com/luislavena/f064211759ee0f806c88

у меня была такая же ошибка. Чтобы исправить просто запустите следующие команды (я знаю, что вы запустили некоторые, но юмор меня):

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

после этого, откройте новую оболочку или источник ваших файлов и все должно пойти хорошо :)

обновление:

чтобы обновить свои пути, вам нужно будет отредактировать файл /etc / paths, поэтому сделайте что-то вроде:

sudo vim /etc/paths

внутри должно выглядеть что-то вроде:

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

что вы хотите сделать, это убедиться, что /usr/local/bin в в верхней части файла. Так что измените его на что-то вроде:

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

надеюсь, что это исправит!

Если вы находитесь в Китае, попробуйте использовать http://ruby.taobao.org/ как источник-это исправило ошибку для меня. В то же время, избегайте https. Запуск этого работал для меня.

gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/
gem install cocoapods

следующие получили все, что работает для меня!

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

Если это не сработает, попробуйте удалить существующий библиотек RubyGems и следовать этому:

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

вы можете сначала установить более новый openssl, как описал Майк Слуцкий. Чтобы проверить версию openssl:

$ openssl version

получить более свежий здесь:http://www.openssl.org/source/ Затем настроить и установить его:

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

Теперь настройте ruby с помощью этого 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

Примечание: новый openssl не должен быть на вас $PATH. Это сработало для меня с ruby 2.0 и 2.1. Удачи (-:

вместо этого вы можете попробовать обновить OpenSSL из источника:

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

источник

я исправил это, только добавив к переменной PATH в моем~/.файл, что в моем случае означает изменение

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

в терминале, типа nano ~/.bash_profile начать редактирование.

Comments

    Ничего не найдено.