Rails, heroku installing puma on different disk gives error

♀尐吖头ヾ 提交于 2019-12-13 19:16:27

问题


I created free account on heroku. Now I am trying this getting started. My DevKit Ruby and openssl are placed inside my D:\ disk, not C:\, beacuse there is reason why I can't use C:\ disk. All files directories are placed in my path.

I have tried to install puma gem by this method, only defference is that disk name is D:\.

When I run gem install puma -- --with-opt-dir=D:\openssl it throws me an long error:

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

UPDATE

I have copied my libeay32.dll and ssleay32.dll inside of my D:\openssl\bin to D:\Ruby21-x64\bin. It said me that it already has these files, so I replaced them.

When I run gem install puma -- --with-opt-dir=D:\openssl it still throws me an error.


回答1:


I have found solution.

Heroku site in this link gives OpenSSL ONLY FOR x86. If you have x64 you need to download it from there.

I hope in future Heroku will provide x64 ssl links in their tutorials.



来源:https://stackoverflow.com/questions/29470930/rails-heroku-installing-puma-on-different-disk-gives-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!