我在做一个游戏的时候,用的是cocos2dx框架,分享用的是OC.出现了一个问题,就是用分享的时候出现 unrecognized selector wbsdn_base64string。
很多人给的办法是直接在 build setting中设置 other linker flags 为 -all_load ,然后把 Architecture中的 armv7 去掉。我想说如果我们这么做的话,直接就会出现必须包含armv7 架构。所以这种方法是不可行的!而且如果我们直接吧other linker flags设置为-all_load的话,Cocos2dx中的main.o会和项目ios文件夹中的main文件会报出 duplicate错误。所以我们不能设置成-all_load
解决办法:如果我们要链接其他的静态链接库,如果我们是用的cocopods管理第三方库的话我们打开cocospods的配置文件,如图:
然后对照上面的图,这才开始设置other linker flags 中的项:
如图:
注意:-Objc是第三方引入的库,而 -framework是系统的库。请特别注意这个格式!