Rails,heroku 在不同磁盘上安装 puma 时出错

Rails, heroku installing puma on different disk gives error

我在 heroku 上创建了免费帐户。现在我正在尝试这个 getting started。我的 DevKit Rubyopenssl 放在我的 D:\ 磁盘中, not C:\,因为有原因我不能使用 C:\ 磁盘.所有文件目录都放在我的路径下。

我试过用这个method安装puma gem,唯一不同的是磁盘名称是D:\.

当我 运行 gem install puma -- --with-opt-dir=D:\openssl 它抛出一个很长的错误:

D:\>gem install puma -- --with-opt-dir=D:\openssl
Building native extensions with: '--with-opt-dir=D:\openssl'
This could take a while...
    ERROR:  Error installing puma:
    ERROR: Failed to build gem native extension.

 D:/Ruby21-x64/bin/ruby.exe -r ./siteconf20150406-5096-1vz5x1.rb extconf.rb -
-with-opt-dir=D:\openssl
 checking for BIO_read() in -lcrypto... no
 checking for BIO_read() in -llibeay32... no
 *** extconf.rb failed ***
 Could not create Makefile due to some reason, probably lack of necessary
 libraries and/or headers.  Check the mkmf.log file for more details.  You may
 need configuration options.

 Provided configuration options:
    --with-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=D:/Ruby21-x64/bin/ruby
    --with-puma_http11-dir
    --without-puma_http11-dir
    --with-puma_http11-include
    --without-puma_http11-include=${puma_http11-dir}/include
    --with-puma_http11-lib
    --without-puma_http11-lib=${puma_http11-dir}/lib
    --with-cryptolib
    --without-cryptolib
    --with-libeay32lib
    --without-libeay32lib

 extconf failed, exit code 1

Gem files will remain installed in D:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/puma-2
 .11.1 for inspection.
 Results logged to D:/Ruby21-x64/lib/ruby/gems/2.1.0/extensions/x64-mingw32/2.1.0
 /puma-2.11.1/gem_make.out

更新

我已将 libeay32.dll and ssleay32.dll 中的 D:\openssl\bin 复制到 D:\Ruby21-x64\bin。它告诉我它已经有这些文件,所以我替换了它们。

当我 运行 gem install puma -- --with-opt-dir=D:\openssl 时它仍然抛出一个错误。

我找到了解决方案。

link gives OpenSSL ONLY FOR x86. If you have x64 you need to download it from there 中的 Heroku 站点。

我希望将来 Heroku 会在他们的教程中提供 x64 ssl 链接。