最近的时候我将我的程序移植到Mac10.6,也就是所谓的雪豹版了.看来苹果公司也知道自己的问题呀,这版本上我那个方法就不管用了,必须改成正常的方式才能得到比较好的效果.不过惟一比较难过的是我如何在Makefile文件内如何判断当前的系统是10.5还是10.6的问题.幸好不是我一个人奋斗,我的同事给了一个答案,方法是这样的:"TARGET = $(shell test `system_profiler SPSoftwareDataType | grep "System Version" | awk '{print $$6}'` = 10.6 && echo mac_10_6 || echo mac)",这样我就知道当前是Mac10.6的环境,然后再编译的时候多添一个宏作为标记,在头文件内将More命令再做一份专供10.6以后的版本用就是了.这样解决问题比较简单.不过再做了这些之后,我突然想假如我的程序如果在10.5和10.6上都运行怎么办呢?那就没办法了,只有在程序中动态判断当前的Mac版本,然后确定究竟使用那个More命令.不过那样可就麻烦了,添加的代码就不是一行两行就能解决问题.幸好我做的是商业软件,我用不着这么做,呵呵.
Mac的More命令奇怪选项(续)
最新推荐文章于 2025-02-06 23:00:00 发布