Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error installing nio4r

Help me, please. I'm try to install gem nio4r, but have error with this logs:

ERROR:  Error installing nio4r:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/nio4r-1.2.1/ext/nio4r
/usr/bin/ruby2.3 -r ./siteconf20161020-13985-1c6zxok.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/nio4r-1.2.1 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/nio4r-1.2.1/gem_make.out

I have ubuntu 16.04, ruby 2.3.0, rails 5.0.0.1.

(with some other gems I have similar error (gem bcrypt))

What I must did to fix this bug? Thank's!

like image 704
Sklerozz Avatar asked Oct 20 '16 12:10

Sklerozz


3 Answers

I am on mac and I fixed it by typing the following code

xcode-select --install
gem install rails
like image 171
Alfred Huang Avatar answered Oct 01 '22 11:10

Alfred Huang


At first try to install build essentials:

sudo apt-get install build-essential patch

and if still don't work try to install ruby-dev:

sudo apt-get install ruby-dev zlib1g-dev liblzma-dev

regards

like image 40
Samuel Diez Avatar answered Oct 01 '22 11:10

Samuel Diez


The root cause of this error message for me was that Xcode updated and I had not accepted the new license agreement yet, so (for some reason) it restricted access to CLT (Command Line Tools -- this is what the xcode-select --install command installs).

If you already have CLT installed, you may need to run the following to get them to work:

sudo xcodebuild -license accept

This is what fixed my issue; I hope it helps someone else.

like image 38
Allison Avatar answered Oct 01 '22 09:10

Allison