Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用rbenv安装的自制软件安装ruby 2.3.1时发生miniruby权限被拒绝错误_Ruby_Macos_Rbenv_Ruby 2.3.1 - Fatal编程技术网

使用rbenv安装的自制软件安装ruby 2.3.1时发生miniruby权限被拒绝错误

使用rbenv安装的自制软件安装ruby 2.3.1时发生miniruby权限被拒绝错误,ruby,macos,rbenv,ruby-2.3.1,Ruby,Macos,Rbenv,Ruby 2.3.1,我在使用rbenv安装ruby 2.3.1时收到错误消息。 我的环境在下面 $ rbenv install 2.3.1 ... Last 10 log lines: compiling enc/unicode.c compiling enc/utf_8.c compiling enc/trans/newline.c linking miniruby generating encdb.h make: ./miniruby: Permission denied make: ./miniruby:

我在使用rbenv安装ruby 2.3.1时收到错误消息。 我的环境在下面

$ rbenv install 2.3.1

...

Last 10 log lines:
compiling enc/unicode.c
compiling enc/utf_8.c
compiling enc/trans/newline.c
linking miniruby
generating encdb.h
make: ./miniruby: Permission denied
make: ./miniruby: Permission denied
make: *** [.rbconfig.time] Error 1
make: *** Waiting for unfinished jobs....
make: *** [encdb.h] Error 1
  • MacOS 10.10.5
  • rbenv 1.0.0
下面是日志消息

$ rbenv install 2.3.1

...

Last 10 log lines:
compiling enc/unicode.c
compiling enc/utf_8.c
compiling enc/trans/newline.c
linking miniruby
generating encdb.h
make: ./miniruby: Permission denied
make: ./miniruby: Permission denied
make: *** [.rbconfig.time] Error 1
make: *** Waiting for unfinished jobs....
make: *** [encdb.h] Error 1
如果您遇到相同的错误,请告诉我如何解决此错误?

感谢您的帮助。

在命令之前添加sudo(授予管理员安装权限)

ex)sudo make ruby 2.3.1


接受的答案不是一个好的答案-安装过程不需要root权限,并且可能会导致将来安装需要C扩展的GEM时出现问题(nokogiri就是一个很好的例子)


这是ruby build软件包中的一个有文档记录的错误:,解决方法是导航到工作目录并自行运行
make install
——如果安装并更新了XCode命令行工具,则应该运行该程序。

在安装之前尝试使用sudocommand@archon92谢谢你的留言。我认为rbenv安装在没有sudo的本地环境中。不正确吗?我不完全确定这一点,但通常ruby make需要对特定文件夹的写入权限,而您得到的错误肯定表明我通过sudo用户解决了这个问题。谢谢archon92。为什么我必须在
rbenv安装2.4.0
之前附加
sudo
?我以为rbenv正在把所有东西都安装到我的
~/.rbenv
,这不是事实吗?我认为在install命令前面加上
sudo
会破坏在主文件夹中使用rbenv的目的。如上所述,我可以解决这个问题。谢谢你,维奥德利。