运行Rails服务器时,出现以下错误: 没有这样的文件要加载 - openssl
我尝试在网上找到的解决方案。我去〜/ .rvm / src / ruby-1.9.2-head / ext / openssl。我键入:ruby extconf.rb,但我得到以下内容:
=== OpenSSL for Ruby configurator ===
=== Checking for system dependent stuff... ===
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for assert.h... yes
=== Checking for required stuff... ===
checking for openssl/ssl.h... no
=== Checking for required stuff failed. ===
Makefile wasn't created. Fix the errors above.
我不能使用make也不能安装。
答案 0 :(得分:80)
rvm pkg install openssl
(旧格式 - rvm package install openssl
)
rvm pkg install iconv
(旧格式 - rvm package install iconv
)
rvm remove 1.9.2
rvm install 1.9.2 -C --with-openssl-dir=$HOME/.rvm/usr,--with-iconv-dir=$HOME/.rvm/usr
答案 1 :(得分:13)
检查此说明http://rvm.io/packages/openssl/ - 请注意,快速修复只是一个块,而不是整个页面。
答案 2 :(得分:7)
你必须为openssl / net / http安装库运行以下代码,然后安装openssl和iconv ..以下代码可以在UBUNTU上运行..
sudo apt-get install libopenssl-ruby1.9.1
这适用于ruby 1.9.1。
sudo apt-get install libopenssl-ruby
答案 3 :(得分:7)
首先检查你的rvm是否有openssl包。转到/usr/local/src/rvm/ruby-1.9.2-p290 /
然后转到ext / openssl。
输入 ruby extconf.rb 如果我们发现这样的错误
enter code here
=== OpenSSL for Ruby configurator ===
=== Checking for system dependent stuff... ===
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for assert.h... yes
=== Checking for required stuff... ===
checking for openssl/ssl.h... no
=== Checking for required stuff failed. ===
Makefile wasn't created. Fix the errors above
然后安装apt-get install libssl-dev.Once安装rub ruby extconf.rb 。现在openssl将被安装
答案 4 :(得分:6)
对于ubuntu,我做了以下事情:
apt-get install libssl-dev
cd ruby-1.9(source directory used to install ruby)/ext/openssl
ruby extconf.rb
make
make install
答案 5 :(得分:2)
这解决了我的问题:
rvm pkg install openssl
rvm reinstall 1.9.2 --with-openssl-dir=$rvm_path/usr
并且不要忘记将ruby版本更改为您正在使用的版本。如果你有一个旧的rvm,你也可以先更新它。
答案 6 :(得分:1)
我做了
rvm pkg install openssl
rvm reinstall 1.9.3
并完成了!
答案 7 :(得分:0)
您可能想尝试运行ruby-1.9.2-rc2而不是head? 不确定它是否会解决这个问题,但我确实在尝试在头下运行时遇到了很多问题
非常确定该命令看起来像 - rvm install 1.9.2-rc2
您需要重新安装导轨
答案 8 :(得分:0)
此错误表示您的Ruby未使用openssl进行编译。 假设您使用RVM,这些是解决此问题的步骤。
1.安装openssl软件包
rvm pkg install openssl
2.删除正在使用的Ruby安装
rvm remove 1.9.3
3.最后使用openssl重新编译Ruby
rvm install 1.9.3 --with-openssl-dir=$HOME/.rvm/usr
4.现在一切都应该工作了。不要忘记:
rvm使用1.9.3 - 默认
答案 9 :(得分:0)
尝试以下步骤。
如果您已经拥有红宝石版本,请使用
rvm重新安装ruby-2.0.0 --with-openssl-dir = $ HOME / .rvm / usr