freebsd的port系统探秘

freebsd以强有力内核,安全稳定,同时方便的port系统也是最吸引人的地方。

 

不过,这两天用port遇到ruby版本的问题,好在port也是开放系统,略加研究就能搞定。同时对ports有了个很好的了解。

 

问题:

 

freebsd下的ruby总是默认用1.8,装gem也都是装到1.8下,而之前用port装的默认即为1.9,非常迷惑!而生产环境也必须要用1.9环境。

 

探索:

 

查看ruby-gems, ruby19下的makefile未发现有硬编码用ruby1.8的内容。找资料研究ports系统。ports本质还是unix下的makefile控制软件编译、安装、清理。只是做了一些规整。

 

如应用的makefile文件都会.include bsd.port.mk,打开发现这是个巨大的文件,根据变量又会引用其它,如bsd.ruby.mk另外的makefile文件。

 

打开bsd.ruby.mk,找到问题,ruby_default_ver 定义成了1.8了。而原来那台机器是1.9。

 

在freebsd网站上查阅到其修订记录,http://www.freebsd.org/cgi/cvsweb.cgi/ports/Mk/bsd.ruby.mk?r1=1.211#rev1.211

 

在8月24日,把ruby version退回到了1.8!!!

 

总结:

 

1. port是一个纯正的unix makefile系统,任务问题都可以查阅Makefile来找到问题。

 

2. 可以查阅port里的应用的修订记录来定位问题。

 

3. 当port组件要升级用portupgrade 组件名升级 非常方便

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值