Tag: snow leopard
将你的Snow Leopard设置为64位
by Elton on 三.30, 2010, under Mac
很多人对Snow Leopard的64位还是一头雾水,下面我详细说一下。
首先,默认情况下,Snow Leopard总是开启32位内核;如果你的CPU是Core 2或者Core i7(的话,系统会在运行程序时自动启动Universal Binary中的64位部分(这里的Universal是32位Intel和64位Intel的Universal,不是指PPC和Intel的),因为默认的32位内核可以运行64位程序。但是,如果你想从内核就变成完全的64位,那么需要你的Mac还具备一个条件,就是你的EFI必须是64位的。EFI是固件用户接口,这里指的是你的固件必须是64位的。
EFI是否为64位的判别方法是:
打开终端,输入代码:
1 | ioreg -l -p IODeviceTree | grep "firmware-abi" | sed -e 's/[^0-9A-Z]//g' |
回车后,如果返回EFI64,则表示是64位的EFI,如果是EFI32则表明是32位的EFI……
通过Mactracker搜索,得到的分界如下:
MacBook:由于苹果限制,MB均不可开启64位内核。
MacBook Pro:MA895/896/897(Mid 2007)及以前的机型是32位的EFI,之后的机型是64位。
iMac:MA876/877/878(Mid 2007)有一部分是32位的EFI,一部分是64位的EFI,在这之前的都是32位,之后都是64位。
Mac Pro:第一代4核和8核都是32位,以后的都是64位。
注意,以上统计信息不一定准确,如果你在自己的机器上发现与上述写法不符的,请及时提出,我将做出更正!
目前已知MA895(预装Tiger)也具备64位EFI,因此wikipedia所谓预装Tiger是32位EFI的言论已经不靠谱了……
关于开启64位内核后的检查方法有四种:
1、进入“About This Mac”,点击“More Info”,在弹出的“System Profiler”中选择左边的“Software”,在右侧可以看到“64-bit kernel and extensions”,即可得知是否开启了64位内核。
2、打开终端,输入“uname -m”即可查看内核构架:
3、打开终端,输入”uname -v”即可查看内核发布信息:
4、打开“活动监视器”,找到进程“kernel_tasks”(PID为0),查看它的构架,它就代表内核。
最后说明开启64位的方法:
暂时性方法:
开机启动听到“咚”的一声马上按住“6″和”4″直到启动完成。建议先用这种方法查看开启64位内核是否有问题,我曾经在一台机器上面尝试开启64位后键盘失灵了。
永久性方法:
打开终端,拷贝下面的命令,回车运行:
1 | sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit /Library/Preferences/SystemConfiguration/com.apple.Boot.plist |
在弹出的文本编辑器中,找到kernel_flag下面的
也就是说,改好的文件应该是这个样子:
1 2 3 4 5 6 7 8 9 10 | <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Kernel</key> <string>mach_kernel</string> <key>Kernel Flags</key> <string>arch=x86_64</string> </dict> </plist> |
改完之后保存退出就可以了。
Snow Leopard下,为Rails升级
by Elton on 十二.06, 2009, under Rails
Snow Leopard是Apple最新的操作系统,拥有更快的速度并减少了对磁盘的占用。 Snow Leopard自带了ruby 1.8.7,已经可以很好的兼容Rails2.*。 对于Rails的开发者应该注意,如果你是从Leopard升级而来,Snow Leopard默认所有的解释型语言都是64位的(包括Ruby)。所以,如果之前你用的是32位的组建,需要做一些更新。
安装Snow Leopard 开发工具
在安装光盘上选择 “Optional Installs”, 安装 “Xcode.mpkg”. 使用默认的设置
安装Passenger
1 2 | $ sudo gem install -r passenger $ sudo passenger-install-apache2-module |
1 | $ cd /etc/apache2 |
编辑httpd.conf加入一下代码:
1 2 3 | LoadModule passenger_module /Library/Ruby/Gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-2.2.4 PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby |
安装MySQL
为了避免不必要的麻烦,强烈推荐你安装64位版本的MySQL。停止之前版本的MySQL。
从这里安装适合Mac OS X 10.5 (x86_64)的MySQL
下载完成后,打开磁盘镜像,首先安装 “mysql-5.1.37-osx10.5-x86_64.pkg”. 使用默认项即可。
然后安装 “MySQLStartupItem.pkg”. 作为Mac的启动项.
最后安装 “MySQL.prefPane”.
如果之前你安装过32位的MySQL gem,那么你需要重新安装一份适合64位的版本。
1 | $ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config |
注意,你不需要使用ARCHFLAGS来重新编译其他gem
原文地址:http://weblog.rubyonrails.org/2009/8/30/upgrading-to-snow-leopard
把你的程序限定到10.6和64位上
by Elton on 十一.01, 2009, under Mac
如果你已经在使用Snow Leopard和XCode 3.2了,你编译了一个64位的程序。 但是你发现他们可能无法在Leopard中很好运行,可能有些地方会出现问题。
如果你想提供一个要求运行在10.6以后系统并且支持64位的程序的话,可以在你的应用的Info.plist中,在最后一个前加入以下内容:
1 2 3 4 5 | <key>LSMinimumSystemVersionByArchitecture</key> <dict> <key>x86_64</key> <string>10.6.0</string> </dict> |
这个方法是被Apple批准和支持的,可以合法的使用。
具体的LSMinimumSystemVersionByArchitecture文档可以参考这里
在snow leopard上编译Ruby, RubyGems, 和Rails
by Elton on 十.01, 2009, under Mac, Rails
准备:
- Snow Leopard系统
- XCode编译环境,Snow Leopard系统盘上有
第一步:设置路径
1 | vim ~/.profile |
在文件最后加上:
1 | export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH" |
使新的路径生效
1 | source ~/.profile |
第二步:下载源文件
1 2 | curl -O ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p174.tar.gz curl -O http://files.rubyforge.vm.bytemark.co.uk/rubygems/rubygems-1.3.5.tgz |
第三步:编译安装
安装ruby
1 2 3 4 5 6 | tar xzvf ruby-1.8.7-p174.tar.gz cd ruby-1.8.7-p174 ./configure --enable-shared --enable-pthread CFLAGS=-D_XOPEN_SOURCE=1 make sudo make install cd .. |
安装rubygem
1 2 3 4 | tar xzvf rubygems-1.3.5.tgz cd rubygems-1.3.5 sudo /usr/local/bin/ruby setup.rb cd .. |
安装rails
1 | sudo gem install rails |
安装ruby的mysql驱动
1 | sudo gem install mysql -- --with-mysql-dir=/usr/local/mysql |
MySQL使用官方的dmg安装即可。
Snow Leopard安装PHP+MySQL+Apache
by Elton on 九.30, 2009, under Mac, PHP
其实Snow Leopard已经内置了apache 2.2.11和php 5.3.0,只是默认都没有打开。
感谢网友Jerry的提醒,如果没有安装过XCode的朋友,在执行下面这些步骤之前,请先安装XCode,XCode在Snow Leopard的光盘里面自带了,你也可以去Apple官方网站,注册一个帐号去下载最新版本的。
1. 启用Apache
进入系统偏好->共享,勾选web共享后即可开启Apache
2. 配置PHP
1 | sudo vim /etc/apache2/httpd.conf |
在
1 | #LoadModule php5_module libexec/apache2/libphp5.so |
把前面的#去掉。
1 | sudo cp /etc/php.ini.default /etc/php.ini |
3. 安装MySQL
从MySQL网站下载最新的MySQL的dmg,按照普通程序安装即可。
1 | sudo vim /etc/php.ini |
将mysql.default_socket的值改为:“/tmp/mysql.sock”
将mysql.default_port的值改为:3306
重启Apache
1 | sudo apachectl restart |
4.测试
在/Library/WebServer/Documents下面建立一个test.php,里面写入:
1 2 3 | <?php phpinfo(); ?> |
然后访问http://localhost/test.php,可以看到mysql都已经配置好了。
5.增加mcrypt扩展支持
先下载,libmcrypt,然后在终端定位到目录里面
再在终端输入:
1 2 3 | ./configure --disable-posix-threads --enable-static make sudo make install |
下载php的源码包,然后解包,在终端用cd定位到里面的ext/mcrypt目录
终端输入:
1 2 3 4 5 | phpize ./configure make cd modules sudo cp mcrypt.so /usr/lib/php/extensions/no-debug-non-zts-20090626/mcrypt.so |
然后在终端输入:
1 | sudo pico /etc/php.ini |
在extensions那里加上:
extension=mcrypt.so
当然,别忘记把extension_dir=后面的改为:
“/usr/lib/php/extensions/no-debug-non-zts-20090626/”
然后,重启apache
1 | sudo apachectl restart |
至此,就在Snow Leopard下成功安装了PHP,MySQL和Apache了。
Snow leopard正式版开包图
by Elton on 八.26, 2009, under Mac
据macrumors消息,西班牙苹果fans已收到snow leopard零售版。
并已经证实正式版的snow leopard的版本号就是Build 10A432(传说中的GM版).


