导入环信的sdk时 和项目里sdk的.a文件 有冲突。在不删掉原来的.a文件的情况下,还有其他办法解决吗?求大神们帮忙~ /(ㄒoㄒ)/~~
认证0级讲师
试试CocoPods吧,用它导入依赖库,它回处理好这些问题
是不是other linker flag里面加入了-all_load?如果是的话,找到所有叫你加这个flag的库,假设叫somelib.a,然后把这个flag删掉,使用另一个flag:
-all_load
-force_load $(PROJECT_DIR)/path/to/somelib.a
原因:如果静态库中有category,则需要-ObjC来告诉linker加载这些category。但是64位系统中-ObjC有一个bug:不加载只包含category的静态库,因此引入了-all_load和-force_load来解决这个bug。-all_load和-force_load的作用是一样的,只是all直接作用于所有文件了,force必须加参数,只作用于参数的文件。让你加-all_load的sdk肯定是里面有category。
-ObjC
-force_load
试试CocoPods吧,用它导入依赖库,它回处理好这些问题
是不是other linker flag里面加入了
-all_load
?如果是的话,找到所有叫你加这个flag的库,假设叫somelib.a,然后把这个flag删掉,使用另一个flag:-force_load $(PROJECT_DIR)/path/to/somelib.a
原因:如果静态库中有category,则需要
-ObjC
来告诉linker加载这些category。但是64位系统中-ObjC
有一个bug:不加载只包含category的静态库,因此引入了-all_load
和-force_load
来解决这个bug。-all_load
和-force_load
的作用是一样的,只是all直接作用于所有文件了,force必须加参数,只作用于参数的文件。让你加-all_load
的sdk肯定是里面有category。