热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mac系统用HomeBrew直接安装ruby

本文章为菲利克斯猫(Felix.mao)原创,转载务必在明显处注明:原文链接:http:blog.csdn.netmaojudongarticledetails7920578使用brew

本文章为菲利克斯猫(Felix.mao) 原创,转载务必在明显处注明:
原文链接:http://blog.csdn.net/maojudong/article/details/7920578


使用brew安装ruby很方便,但缺点也是很明显的,不能实时进行版本的切换

所以还是用 brew + rvm 或brew + rbenv比较好,以后文章会介绍


前言:我们不去删除系统自带的ruby,gem,rails,而是自己重新安装一套新的ruby,gem,rails ,通过更改PATH环境变量的方式来更新系统,

这样做好处比较安全的,不会破坏原有的苹果系统,又不耽误我们用最新的ruby进行开发


好了,开始吧

1. brew update

2. brew install ruby

先看先原来的版本





3.设置环境变量

系统原始版本的/usr/bin/ruby 我们并不删除,只是更改PATH环境变量,且将/usr/local/bin 添加到PATH的前面,这样系统就会首先用

/usr/local/bin下面找到我们用brew安装的ruby 1.9.3-p194 版本的了

到自己目录下的.profile 或者 .bashrc 或者  .bash_profile 如我的位置

/Users/maojudong1984/.profile   

用emacs或是vim打开 (更改前请备份好这个文件,避免误操作)


在文件的末尾加入

# for brew install

export PATH=/usr/local/bin:$PATH


然后重启终端,就可以用到了新的ruby了

检验一下

$ ruby --version

ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin12.1.0]

$ which ruby

/usr/local/bin/ruby               注意:系统的是 /usr/bin/ruby


4. gem的自我更新 

gem是随着ruby的安装而安装的,所以路径和刚刚安装ruby的路径是相同过的,


此gem是自己安装路径中的gem (/usr/local/bin/gem),不是系统过的gem(/usr/bin/gem),我们这里也不动系统的gem



gem的自我更新完成了,其实是将1.8.23 更新到了1.8.24版本


5. 用自己的gem安装自己的rails(都是相对于系统过的/usr/bin/rails来说的)




我们自己的rails路径 /usr/local/bin/rails---需要手动的建立连接  (系统的是/usr/bin/rails)

rails 是依赖与ruby编译的,所以安装的时候,用的哪个ruby,

rails 启动服务的时候就是用的哪个ruby


6.

自己建立rails的 连接------这个方法不太好,因为以后更新版本不方便,每次都需要手动的建立链接,还是用rvm或是rbenv比较好

cd /usr/local/bin

 ln -s /usr/local/Cellar/ruby/1.9.3-p194/bin/rails rails


检测一下吧

$ which rails

/usr/local/bin/rails


7.

创建项目

cd ~

rails new  CMSbrew1

cd CMSbrew1

rails s


浏览器中输入

http://0.0.0.0:3000




我们看到已经是我们刚刚安装的ruby和自己的rails了


你也可以安装其他的数据库,如,MySQL等和一些插件,不过还是建议用RVM或是RBENV进行安装 ,后面会介绍


那么如何恢复到系统默认的呢 ruby1.8.7的呢 

方法也很简单:

/Users/maojudong1984/.profile   

用emacs或是vim打开 (更改前请备份好这个文件,避免误操作)


在文件的末尾将

# for brew install

#export PATH=/usr/local/bin:$PATH

注释掉


然后重启终端,就回到了ruby1.8.7了 注意PATH路径中/usr/local/bin 不放到最前面就可以了


备注:

http://ftp.ruby-lang.org/pub/ruby/1.9/  ruby 的下载地址


其它Homebrew指令:

brew list   —列出已安装的软件

brew update   —更新Homebrew

brew home  *—用浏览器打开

brew info   *—显示软件内容信息

brew deps * — 显示包依赖

brew server *  —启动web服务器,可以通过浏览器访问http://localhost:4567/ 来同网页来管理包

brew -h brew   —帮助


本文章为菲利克斯猫(Felix.mao) 原创,转载务必在明显处注明:
原文链接:http://blog.csdn.net/maojudong/article/details/7920578


推荐阅读
  • Linux学习精华:程序管理、终端种类与命令帮助获取方法综述 ... [详细]
  • 本文推荐了六款高效的Java Web应用开发工具,并详细介绍了它们的实用功能。其中,分布式敏捷开发系统架构“zheng”项目,基于Spring、Spring MVC和MyBatis技术栈,提供了完整的分布式敏捷开发解决方案,支持快速构建高性能的企业级应用。此外,该工具还集成了多种中间件和服务,进一步提升了开发效率和系统的可维护性。 ... [详细]
  • 本文首先对信息漏洞的基础知识进行了概述,重点介绍了几种常见的信息泄露途径。具体包括目录遍历、PHPINFO信息泄露以及备份文件的不当下载。其中,备份文件下载涉及网站源代码、`.bak`文件、Vim缓存文件和`DS_Store`文件等。目录遍历漏洞的详细分析为后续深入研究奠定了基础。 ... [详细]
  • 作为140字符的开创者,Twitter看似简单却异常复杂。其简洁之处在于仅用140个字符就能实现信息的高效传播,甚至在多次全球性事件中超越传统媒体的速度。然而,为了支持2亿用户的高效使用,其背后的技术架构和系统设计则极为复杂,涉及高并发处理、数据存储和实时传输等多个技术挑战。 ... [详细]
  • 深入解析Wget CVE-2016-4971漏洞的利用方法与安全防范措施
    ### 摘要Wget 是一个广泛使用的命令行工具,用于从 Web 服务器下载文件。CVE-2016-4971 漏洞涉及 Wget 在处理特定 HTTP 响应头时的缺陷,可能导致远程代码执行。本文详细分析了该漏洞的成因、利用方法以及相应的安全防范措施,包括更新 Wget 版本、配置防火墙规则和使用安全的 HTTP 头。通过这些措施,可以有效防止潜在的安全威胁。 ... [详细]
  • 为何Serverless将成为未来十年的主导技术领域?
    为何Serverless将成为未来十年的主导技术领域? ... [详细]
  • Panabit应用层流量管理解决方案
    Panabit是一款国内领先的应用层流量管理解决方案,提供高度开放且免费的专业服务,尤其擅长P2P应用的精准识别与高效控制。截至2009年3月25日,该系统已实现对多种网络应用的全面支持,有效提升了网络资源的利用效率和安全性。 ... [详细]
  • 如何撰写PHP电商项目的实战经验? ... [详细]
  • 利用Apache构建高效稳定的Web服务器环境
    本文详细介绍了如何利用Apache构建高效稳定的Web服务器环境。首先,概述了Apache服务器的基本概念及其安装步骤,并深入探讨了相关配置文件的设置方法。接着,通过具体的实验环境示例,展示了服务端(域名:zhangpp63.cn,IP地址:192.168.1.63)和客户端的配置过程,确保读者能够全面理解并实际应用这些技术。此外,还提供了一些优化建议,以提高服务器的性能和稳定性。 ... [详细]
  • 如何利用Apache与Nginx高效实现动静态内容分离
    如何利用Apache与Nginx高效实现动静态内容分离 ... [详细]
  • 在Linux系统中,MySQL的用户权限管理是运维人员必须掌握的关键技能之一。本文详细介绍了MySQL用户和权限管理的相关概念,包括MySQL用户的概念及其与VSFTPD虚拟用户的相似性,以及密码管理的重要性。此外,还深入探讨了如何通过命令行工具和配置文件进行用户权限的设置和调整,确保系统的安全性和稳定性。 ... [详细]
  • Docker网络基础探讨了如何通过高效的技术手段实现跨主机容器间的顺畅通信与访问。本文深入分析了Docker网络架构,特别是其在多主机环境下的应用,为Go语言开发者提供了宝贵的实践指导和理论支持。 ... [详细]
  • 在Linux环境中,通过编写Shell脚本来实现自定义命令的创建与激活,能够极大地简化服务器上多个子系统的管理操作。例如,通过简单的命令如“tt”,即可快速查看各个应用程序的名称及其运行状态,从而提高系统维护的效率和便捷性。 ... [详细]
  • 黄聪:MySQL主从复制配置,实现高效读写分离
    大型网站为应对高并发访问,不仅需要在前端实现分布式负载均衡,还需在数据业务和访问层采取有效措施。采用传统的数据结构已无法满足需求,通过配置MySQL主从复制,可实现高效的读写分离,显著提升系统性能和稳定性。 ... [详细]
  • 10款精选jQuery插件助力响应式网页设计布局优化
    响应式网页设计在当今的数字环境中至关重要。本文精选了10款优秀的jQuery插件,旨在帮助设计师和开发者优化网站布局,确保内容在不同设备上(如手机、平板电脑等)都能呈现最佳效果,提升用户体验。这些插件不仅功能强大,还能显著简化开发流程,提高工作效率。 ... [详细]
author-avatar
詹慧君874
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有