迁移到MAC

周末折腾了2天环境,主要是从windows迁移到mac上,提升逼格告别山寨,迈向专业化。首先,终于把pomelo的c客户端在xcode上跑起来了,至此已基本解决了网络连接问题。由于是第一次用mac开发,踩了无数个坑。


(一)libpomelo的编译安装不是用make而是gyp,gyp貌似下下来就可以了,不用安装,但是要修改环境变量。
(二)libpomelo依赖的两个库是libuv和jansson,这两个库已经被打包进libpomelo的源代码中了,可以一起编译出来,一共是三个静态库,没有动态库,但刚开始我以为要自己下载两个依赖库,于是从git上下了代码又自己编了一遍,浪费了很多时间,修改python安装脚本又用了下autoconf,坑爹。
(三)libpomelo编译时,要指定目标环境是模拟器,因为模拟器的架构是i386的,如果不指定,编出来的静态库没法用。源代码里的模拟器又是6.1的而我只有7.0的模拟器,还好改了脚本。
(四)把cocos2dx的libpomelo demo装进xcode,各种编不过,试了好几次才找全libpomelo和libuv jansson需要的头文件,链接时却又报错,看了下配置文件,原来是cocos2dx带的libcurl和websocket两个静态库都要手动配置到工程里,又是一番折腾。


经过这四个坑,终于把客户端启动起来了。
另外我在vs2012上写的游戏移植到xcode5上各种不兼容,除了代码检查更严格以外,粒子系统也不能运行,plist读取后有空指针,另外寻路代码因为是用模板写的,到xcode5上各种报错,更奇葩的是一个编译错误直接指向标准库的代码,这怎么查错呢?以后再也不用模板了。反正老代码的架构不行,干脆重写得了。学习不是盖楼,而是不断推到重来,god bless me! 

 

迁移总结:

用模版时,NULL也要强转成模版参数类型

要用visibleSize和setPosition(visibleOrigin)

给Resources添加资源时,要create folder reference不能create groups
 
编译库的时候,一定要注意目标平台,ios模拟器的架构是i386的。如果编出来64位的库,就不能用在ios模拟器上!比如这个错误:Undefined symbols for architecture i386:
 

礼拜六在mac上装了ubuntu虚拟机,这个操作系统还是不尽人意,有时卡的要命,而且eclipse绝对是编码杀手,界面烂不说,c++的代码识别那是屎一样的存在,还不如没有,果断删了不用,可惜浪费了一天。
时间真是拿来挥霍的,90%的时间只干了10%的活,人艰不拆!

posted @ 2014-01-26 20:55  GAMTEQ  阅读(466)  评论(0编辑  收藏  举报