全新安装Rails时出现nio4r (2.3.1)安装错误求助
解决High Sierra下Rails安装时nio4r权限错误的方案
嘿,我之前在High Sierra上用rbenv装Rails时也碰到过完全一样的问题!这本质是rbenv对应Ruby版本的gem目录没有足够的写入权限,导致bundler没法创建nio4r扩展的编译目录。咱们一步步来搞定:
先确认权限问题的根源,执行命令查看目标目录的归属:
ls -ld /Users/jake/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/extensions
正常情况下这个目录应该属于你的用户(jake),如果显示归属是root,那就是权限问题的核心了。把整个Ruby版本目录的权限改成你自己的用户所有,一次性解决后续可能出现的同类问题:
sudo chown -R jake:staff /Users/jake/.rbenv/versions/2.5.0
这里的staff是macOS默认的用户组,如果你不确定自己的组名,可以用id -g -n命令查看后替换。手动安装nio4r验证权限是否修复:
gem install nio4r -v '2.3.1'
要是这个命令能成功执行,那再回去运行bundle install就应该能顺利完成了。如果还是不行,大概率是编译原生扩展需要的Xcode命令行工具有问题,试试重新安装或重置:
xcode-select --install
(如果已经安装过,就用xcode-select --reset重置一下)
内容的提问来源于stack exchange,提问作者user3349825
相关产品推荐
相关产品推荐

