[英]System-wide RVM to replace a home directory loaded on different architectures
我已经看到了一些这样的问题,但似乎系统范围的 RVM 已被弃用,因此没有任何答案适用。
我有一个 NFS 挂载的主目录,当我登录到我们实验室中任意数量的不同机器时,我可以访问它。 因此,当我尝试在这些不同的机器上使用本地编译的 Ruby 时,它会中断——因为它们具有不同的架构。
我以超级用户身份安装了 RVM,但我不知道如何指导我的常规用户帐户使用超级用户选择的 Ruby。 相反,它总是尝试使用~/bin
中的那个。
select 全局 Ruby 的合适方法是什么?
我在同样的问题上挣扎了很长一段时间。 我最终做了以下事情:
使用以下命令行安装 rvm(注意:使用中没有提到 --path 选项,所以我不知道它的支持程度,但它对我有用),路径中有适当的架构:
rvm-installer --path ~/tools/x86_64/rvm --version latest
安装您希望能够支持的任何架构。 (注意:确保您没有覆盖路径的 .rvmrc 文件,尤其是在第二次安装期间。)
然后将以下内容添加到 your.bashrc/.bash_profile:
OS=$(uname -s)
if [[ $OS = Linux ]] ; then
> ARCH=$(uname -m | sed 's/i.86/i686/')
elif [[ $OS = FreeBSD ]] ; then
> ARCH=$(uname -m | sed 's/i.86/i686/')
elif [[ $OS = Darwin ]] ; then
> ARCH=mac
else
> ARCH=unknown
fi
export ARCH
安装程序将在 your.bash_profile 中添加一行设置 rvm function,将其更改为如下所示:
[[ -s "$HOME/tools/$ARCH/rvm/scripts/rvm" ]] && . "$HOME/tools/$ARCH/rvm/scripts/rvm"
您还应该编辑您的 .rvmrc 文件以具有以下内容:
export rvm_path="$HOME/tools/$ARCH/rvm"
我还没有时间完全测试这个设置,但至少它似乎在不同平台上调用了正确版本的 RVM。
祝你好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.