我正在尝试安装此gem:https://github.com/mongodb/mongo-ruby-driver(在主分支上)。
当我运行bundle install时,我得到:
输入PEM密码:
(我没有钥匙,因为这是一个公共回购,所以我按回车)
OpenSSL :: PKey :: RSAError:既不是PUB密钥也不是PRIV密钥:嵌套asn1错误
我尝试从源代码下载zip和捆绑,并得到完全相同的问题。
更新我的本地环境变量
rvm_bin_path = /用户/粘土/ .rvm / bin中
TERM_PROGRAM = Apple_Terminal
GEM_HOME = /用户/粘土/ .rvm /宝石/红宝石2.0.0-P451
TERM = xterm的-256color
SHELL = /斌/庆典
IRBRC = /用户/粘土/ .rvm /红宝石/红宝石2.0.0-P451 / .irbrc
TMPDIR = /变种/文件夹/基/ 7nzdd2wx2tzbrwr4bm8t25qr0000gn / T /
Apple_PubSub_Socket_Render = / TMP /推出-8mCJ2I /渲染
TERM_PROGRAM_VERSION = 326
OLDPWD = /用户/粘土/开发人员
MY_RUBY_HOME = /用户/粘土/ .rvm /红宝石/红宝石2.0.0-P451
TERM_SESSION_ID = 63791880-F18D-4CD5-932D-109041B81415
USER =粘土
_system_type =达尔文
rvm_path = /用户/粘土/ .rvm
SSH_AUTH_SOCK = / TMP /推出-8O5pHu /听众
__ CF_USER_TEXT_ENCODING = 0x1F5:0:0
rvm_prefix = /用户/粘土
__ CHECKFIX1436934 = 1
PATH = /用户/粘土/ .rvm /宝石/红宝石2.0.0-P451 / bin中:/Users/Clay/.rvm/gems/ruby-2.0.0-p451@global/bin:/用户/克莱/ .rvm /红宝石/红宝石2.0.0-P451 /斌:/Users/Clay/.rvm/bin:在/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录:在/ usr / local / bin目录: /opt/X11/bin:/usr/local/git/bin:/usr/local/mysql/bin:/Users/Clay/Developer/mongodb-osx-x86_64-2.4.6/bin:/usr/local/mysql / support-files /:/ Applications / Sublime Text.app/Contents/SharedSupport/bin /:/ Users / Clay / Developer / AWS-ElasticBeanstalk-CLI-2.6.3 / eb / macosx / python2.7 /
PWD = /用户/粘土/开发人员/蒙戈-红宝石驱动器
LANG =的en_US.UTF-8
_system_arch = x86_64的
_system_version = 10.9
rvm_version = 1.24.7(稳定)
HOME = /用户/粘土
SHLVL = 1
RAILS_ENV =发展
LOGNAME =粘土
GEM_PATH = /用户/粘土/ .rvm /宝石/红宝石2.0.0-P451:/Users/Clay/.rvm/gems/ruby-2.0.0-p451@global
DISPLAY = / TMP /发射-Pm5rac / org.macosforge.xquartz:0
RUBY_VERSION =红宝石2.0.0-P451
SECURITYSESSIONID = 186f1
_system_name = OSX
_ =的/ usr /仓/ env的
答案 0 :(得分:1)
我建议你首先使用稳定版本并且不使用bundle。如果可行,则尝试使用master分支和bundle。
首先,试试这个并告诉我们它是否成功:
gem install mongo
(如果失败,请将确切结果复制/粘贴为您的问题的编辑。)
其次,尝试在新目录中构建当前稳定版本:
rm -rf mongo-ruby-driver
git clone https://github.com/mongodb/mongo-ruby-driver.git
cd mongo-ruby-driver
git checkout 1.11.1
gem build mongo.gemspec
(如果失败,请将确切结果复制/粘贴为您的问题的编辑。)
您期望看到的是:
Warning: No private key present, creating unsigned gem.
Successfully built RubyGem
Name: mongo
Version: 1.11.1
File: mongo-1.11.1.gem
(如果您发现任何不同之处,请复制/粘贴确切结果作为您问题的修改。)
如果在尝试构建1.11.1时仍然出现PEM错误,请尝试编辑mongo.gemspec
。注释掉可能导致PEM提示的这些行:
# s.signing_key = 'gem-private_key.pem'
# s.cert_chain = ['gem-public_cert.pem']
然后重试构建:
gem build mongo.gemspec
(如果构建失败,那么我建议您查看您的宝石环境,看看它是否符合您的预期。运行gem env
并将结果复制/粘贴到您的问题中。此外,搜索您的名为gem env
的文件的各种gem-private_key.pem
目录。此文件可能导致您的问题;暂时重命名并重试。)
如果构建成功,则照常安装:
gem install mongo-1.11.1
如果这一切都有效,那么你的身体状况良好。
如果你肯定你想要主分支:
git checkout master
gem build mongo.gemspec