Apple

有关Apple、Macintosh、Jobs、NeXT、Woz……的一切事情。 Currently, 43 posts in this tag.

在Snow Leopard下编译PHP的pecl_http扩展库

| 4 comments 2010-01-14 10:31:50

由于Snow Leopard为64位系统,Apache无法加载直接编译pecl_http出来的http.so,查日志文件可以看到如下提示:

PHP Warning: PHP Startup: Unable to load dynamic library '/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so' - dlopen(/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so, 9): no suitable image found. Did find:\n\t/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so: mach-o, but wrong architecture in Unknown on line 0

Google一圈后,发现要设置一下环境变量:

MACOSX_DEPLOYMENT_TARGET=10.6

CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"

CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"

CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"

LDFLAGS="-arch i386 -arch x86_64 -bind_at_load"

export CFLAGS CXXFLAGS LDFLAGS CCFLAGS MACOSX_DEPLOYMENT_TARGET

然后在终端下照常编译即可:

phpize

./configure

make

成功加载这个扩展后,phpinfo()中会看到:

phpinfo()中显示的模块信息

代人寻iPhone开发者

| 2 comments 2010-01-08 11:56:30

今天收到一封邮件,要我帮忙寻找iPhone开发者,说是有个项目,具体情况我不熟悉,有兴趣的朋友可以直接和邮件作者联系。经同意,邮件转载如下:

我们现在想要寻找一个iPhone上软件开发的熟手,part time或者full time协助我们开发这款软件,我们支付费用。不需要用到太复杂的算法或者达到很绚的效果,我们只想完成一个在iPhone上运行的iPhone style的应用程序,但紧迫的项目时间以及规划适合iPhone的软件架构这两方面,需要我们寻找资深的开发人员给与我们帮助。

联系人: 李兴华 (我们的技术负责人);张峰 (产品经理)

公司名称: 上海庞米电子信息技术有限公司

邮件: xinghua.li@permian.com.cn; cc: jeff.zhang@permian.com.cn

手机: 13764568757(李); 13818945272(张)

真的geek,能在MacBook Pro上安装OSX86

| 4 comments 2009-12-18 23:03:44

我一直非常喜欢Mac OS Panther/Tiger中的拉斯金属(brushed metal)效果,可惜Apple从Leopard开始就放弃了这个漂亮的界面。Mac下的换肤软件Shapeshifter已经多年不更新了,根本没法用。而其它几个新出的换肤软件(MagnifiqueFacade)还都不成熟。想来想去,貌似只能安装一个Tiger来解解馋。

第一轮:从macosx_10.4.4_dvd.dmg镜像安装

说干就干,Google了一圈儿以后发现这篇名为“10.5: Virtualize machine-specific 10.4 in Fusion 2 ”的文章,于是翻箱倒柜找出一张保存着macosx_10.4.4_dvd.dmg的光盘,加载这个dmg,然后按照文章中的说法运行OSInstall.pkg后,安装程序启动,紧接着弹出一个框,告诉我这个盘不能装,点“确定”后就退出了。

这点小事儿难不倒我,用Finder的“显示包内容”进入这个pkg,一般来说按照经验找到InstallCheck.sh,将其删除即可。可是进了包却没发现有这个文件,倒是有个OSInstall.dist,估计就是它了。用TextMate打开一看,果然所有的安装检测都在这儿呢。懒得改了,直接将此文件删除,反正检测是越少越好。

OSInstall.dist

再次启动安装程序,非常顺利,一路安装设置完毕,在虚拟机里启动时却总是kernel panic,说是“CPU被客户机禁用”,试了几次,都是如此。

第二轮:祭出JaS Patcher

呵呵,这错误咱再熟悉不过了。想当年咱也是创办“PearPC中文站”和“OSX86 China”的人,什么千奇百怪的错误没见过。

于是再次翻箱倒柜,顺利找到给Mac OS X光盘打破解补丁的JaS.Updated.Intel.Auto-Patcher,按照说明开始给这个dmg打补丁。在经过了漫长的等待后,全新的打过补丁的OSX86光盘镜像新鲜出炉了(BurnThisImage.iso)!

OSX86光盘镜像

为了以防万一,我先把刚才用的那个VMware虚拟硬盘挂上(mount),然后用磁盘工具把这个虚拟硬盘格式化一下,再次启动安装程序,安装仍旧没问题,可是启动后问题照旧-“CPU被客户机禁用。咦?

第三轮:先安装Mac OS X再破解

这次先用第一轮的方法安装了系统,接着打开第二轮中得到的光盘镜像,手动安装几个负责破解的pkg包,我琢磨着这样应该能完全破解掉OS X对BIOS/EFI和CPU的检测,并顺利启动系统吧。

结果事与愿违,在经过了数次尝试后,第三轮仍旧可耻地失败袅……

第四轮:乾坤大挪移

在经过了2天3轮10小时的折腾后,我不得不放弃直接在我的MacBook Pro上用虚拟机安装Mac OS X。就在我精疲力尽之际,突然发现墙角还有一个大大的箱子-没错,能完美运行OSX86的PC正安静的躺在里面。于是把它搬过来接上电源显示器鼠标键盘,开机一看是Windows,“我的电脑”里倒是有个名为Macintosh的分区,不过格式为fat32,显然原来的OSX86被我给格式化掉了,翻了翻文档记录,发现这台PC上次的开机时间为2008年1月6日,ft……

这次我决定做个大胆的尝试。我在这台PC上启动了VMware,新建了Freebsd虚拟机,然后用OSX86光盘安装了一个系统出来。谢天谢地,OSX86在虚拟机中安装非常顺利,这还是这两天的第一次。安装结束后在系统启动前,我关掉VMware,然后用U盘把虚拟机文件拷贝到MacBook Pro上,接着双击FreeBSD.vmx,VMware启动,我默念“老天保佑”……

虚拟机类型仍为Freebsd

系统启动界面出现,再等1分多钟,桌面出现了!是第一次启动Mac OS X的配置向导。我成功了!

第一次启动

系统启动后我试了试,没发现任何异常,速度可以接受,网络可以用。更让我惊讶的是,虚拟机里的系统声音系统完全正常,不仅能播放音乐,甚至内建麦克风也可用!

麦克风

Finder还是Tiger中的最好用:

Tiger中的Finder

看到漂亮的brushed metal,这2天的折腾算是值了。

细节见真章-Apple Mail中的地址识别

| 4 comments 2009-10-15 22:16:28

因为要跑税务局,于是邮件获得地址后,顺势想用鼠标选中这行字复制一下,以便在Google Map中看看怎么走。当我鼠标划过的一刹那,发现文字旁边出现一行虚线框-难不成Apple Mail连地址都能识别出来?电话、邮编识别都不稀奇,毕竟数字格式都比较规则,可地址也行?

点了一下,结果:

第一步,文本识别

再按了“显示地图……”

第二步,查看地图

整个过程之轻松惬意出乎意料!就这么一个小细节,却让人觉得很爽,细节决定成败啊!

09年10月16日:我把文章稍微改了一下,讽刺不能解决问题,还是多侧重一些好的设计吧。

MacOS的窗口控制按钮为何在左上角?

| 14 comments 2009-09-28 22:48:32

今天云天问了我一个问题,可把我难住了:Apple为什么把窗口控制按钮(关闭、缩放和最小化)放在左上角?

说实话我还真不知道。我不妨斗胆猜一下为什么Windows的在右上角:

在Apple的第一款带有GUI的电脑Lisa诞生后,Jobs曾经请Gates过来参观。Gates被优雅的Lisa深深震撼,回去闷头搞Windows。在Lisa诞生2年、Mac诞生1年后,Windows 1.0终于发布了。根据“硅谷海盗(Pirates of Silicon Valley)”一片的记载,Jobs在得知这个消息后对Gates大发雷霆,认为他剽窃了自己的MacOS的界面。虽然Gates大叔说出了那句著名的“我想应该说是,我们都住在一位名叫‘施乐’的富有邻居旁边,你闯进去偷电视,却发现我先到一步,然后还说:‘不,这不公平,原来是我要偷的!’”,但从片中Gates的反应来看,他多少还是有些内疚的。因此,学习和借鉴MacOS中的大部分设计、修改一些无关紧要的部分,也不失为避免内疚(以及专利纠纷)的一种方法。

这当然是我的胡乱猜测,有深喑这段历史并清楚上面问题答案的朋友不妨出来给我们解解惑。

About

我在厦门拍的照片

丁宇(Felix Ding),电脑Geek,狂热的爱书和爱乐分子,99年迷上网页设计,并从此一发不可收。现在在上海做用户体验/产品设计咨询。Email: felixding[AT]gmail.com。

订阅到RSS