我找不到此软件的软件包。我根据找到的软件包进行构建和安装这里,但它仍然无法与 rvm 和 gem 正常工作(日志位于这里)。您建议如何找到一个可以使其正常工作的软件包?
stanley@ubuntu:~/Github/webdev_class/ruby$ sudo apt-cache search ^openssl
[sudo] password for stanley:
openssl-blacklist - Blacklists for OpenSSL RSA keys and tools
openssl-blacklist-extra - Non-default blacklists of OpenSSL RSA keys
libengine-pkcs11-openssl - OpenSSL engine for PKCS#11 modules
libxmlsec1-openssl - Openssl engine for the XML security library
openssl - Secure Socket Layer (SSL) binary and related cryptographic tools
这是尝试后的打印输出dpkg -l | grep openssl
。
stanley@ubuntu:~/Github/webdev_class/ruby$ dpkg -l | grep openssl
ii openssl 1.0.0e-2ubuntu4.5 Secure Socket Layer (SSL) binary and related cryptographic tools
ii python-openssl 0.12-1ubuntu1 Python wrapper around the OpenSSL library
答案1
使用sudo apt-get install openssl
,或者使用软件中心来找到它。
当我寻找软件包时,我通常使用apt-cache search whatever
。
对于 openssl,以下是我在系统上看到的内容:
$ apt-cache search ^openssl
openssl - Secure Socket Layer (SSL) binary and related cryptographic tools
openssl-blacklist - Blacklists for OpenSSL RSA keys and tools
openssl-blacklist-extra - Non-default blacklists of OpenSSL RSA keys
libengine-pkcs11-openssl - OpenSSL engine for PKCS#11 modules
libxmlsec1-openssl - Openssl engine for the XML security library
对于 gem 依赖项,你通常会使用类似以下内容:
sudo apt-get install ruby-full build-essential ruby-rvm yorick rubygems
然而,显然ruby-rvm 已损坏,因此前维护者的建议是将其完全删除,然后通过提供的 URL 和 bash 脚本进行安装:
sudo apt-get --purge remove ruby-rvm sudo rm -rf /usr/share/ruby-rvm /etc/rvmrc /etc/profile.d/rvm.sh
打开新终端并验证环境是否清除了旧的 rvm 设置(应该没有输出):
env | grep rvm
如果有输出,请尝试打开新终端,如果没有帮助 - 重新启动计算机
安装RVM:
curl -L get.rvm.io | bash -s stable
rvm requirements
在安装 rubies 之前不要忘记阅读
答案2
OpenSSL 通常默认安装在 Ubuntu 上。你可以查看安装它的原因:
aptitiude why package
对于 openssl,这可以追溯到 cups:
$ LANG=C aptitude why openssl
i ssl-cert Depends openssl (>= 0.9.8g-9)
$ LANG=C aptitude why ssl-cert
i cups Depends ssl-cert (>= 1.0.11)
(我使用 LANG 环境变量来获取英文输出,而不是本地输出)。
我不确定,但也许 rvm / gem 确实需要 SSL 开发库,它们被打包到libssl-dev
.
sudo apt-get install libssl-dev
这通常当你从源代码编译某些东西时就会出现这种情况,我记得 gem 在解决包依赖关系时就是这样做的。