0

我正在尝试在 Ubuntu 16.04 上部署 Fedena 2.3 (projectfedena.org),并在 Rails 2.3.5 上使用 Ruby 1.8.7 构建。我已经能够安装它并使用脚本/服务器运行,但现在我正在尝试使用 Puma+Nginx 部署它,并且一旦我运行 gem install puma 3.6.2(它上面的任何版本都需要 Ruby > 1.8。 7),它给了我这个错误。有谁知道我该如何解决?

user@server:~/development$ gem install puma -v 3.6.2
Building native extensions.  This could take a while...
ERROR:  Error installing puma:
    ERROR: Failed to build gem native extension.

/home/user/.rvm/rubies/ruby-1.8.7-head/bin/ruby extconf.rb
checking for BIO_read() in -lcrypto... yes
checking for SSL_CTX_new() in -lssl... yes
checking for openssl/bio.h... yes
creating Makefile

make
gcc -I. -I. -I/home/user/.rvm/rubies/ruby-1.8.7-head/lib/ruby/1.8/x86_64-linux -I. -DHAVE_OPENSSL_BIO_H    -fPIC -O2 -fno-tree-dce -fno-optimize-sibling-calls  -fPIC   -c http11_parser.c
gcc -I. -I. -I/home/user/.rvm/rubies/ruby-1.8.7-head/lib/ruby/1.8/x86_64-linux -I. -DHAVE_OPENSSL_BIO_H    -fPIC -O2 -fno-tree-dce -fno-optimize-sibling-calls  -fPIC   -c puma_http11.c
gcc -I. -I. -I/home/user/.rvm/rubies/ruby-1.8.7-head/lib/ruby/1.8/x86_64-linux -I. -DHAVE_OPENSSL_BIO_H    -fPIC -O2 -fno-tree-dce -fno-optimize-sibling-calls  -fPIC   -c mini_ssl.c
mini_ssl.c:4:26: fatal error: ruby/version.h: No such file or directory
 #include <ruby/version.h>
                          ^
compilation terminated.
make: *** [mini_ssl.o] Error 1


Gem files will remain installed in /home/user/.rvm/gems/ruby-1.8.7-head/gems/puma-3.6.2 for inspection.
Results logged to /home/user/.rvm/gems/ruby-1.8.7-head/gems/puma-3.6.2/ext/puma_http11/gem_make.out
4

2 回答 2

1

最后一个正式支持 Ruby 1.8.7 的 puma 版本是 2.16.0

https://github.com/puma/puma/blob/master/History.md#2160--2016-01-27

https://github.com/puma/puma/blob/master/History.md#300--2016-02-25 状态

不再支持 Ruby pre-2.0

于 2018-07-10T11:47:06.670 回答
0

跑步

gem install puma -v 3.4.0

适用于我的 ruby​​ 1.8.7。尝试安装此 puma 版本

于 2017-10-16T00:58:08.937 回答