Cocos2d-x项目创建之 原生ios项目导入Cocos2d框架
2017-05-17 19:53
483 查看
上一章: Cocos2d-x项目创建之 静态库生成
第一步,“Cocos2d-X源码”和“预编译静态库”准备
Cocos2d-X源码可在官网下载,如:
Cocos2d-X 预编译静态库生成方法: Cocos2d-x项目创建之 静态库生成
第二步,原生iOS项目导入“Cocos2d-X源码”和“预编译静态库”
1.预编译静态库导入:(本方法只导入“模拟器Debug”环境的静态库,其他环境静态库导入方法雷同!)
如图:
2.Cocos2d-X源码包导入,Cocos2d-X源码包粘贴复制放在 MyFirst项目 的一级目录中:(Cocos2d-X源码包,用于cocos项目开发过程中使用,相当于将官方API集成在工程本地文件中。用于开发过程中,代码API调用!)
如图:
3.Cocos2d-X源码包引用:(Cocos2d-X源码包,用于cocos项目开发过程中使用,相当于将官方API集成在工程本地文件中。用于开发过程中,代码API调用!)
(1)、[project] -- [Build Setting] -- [Header Search Paths]:
$(SRCROOT)/cocos2d-x-3.10
$(SRCROOT)/cocos2d-x-3.10/cocos
$(SRCROOT)/cocos2d-x-3.10/cocos/base
$(SRCROOT)/cocos2d-x-3.10/cocos/physics
$(SRCROOT)/cocos2d-x-3.10/cocos/math
$(SRCROOT)/cocos2d-x-3.10/cocos/2d
$(SRCROOT)/cocos2d-x-3.10/cocos/ui
$(SRCROOT)/cocos2d-x-3.10/cocos/network
$(SRCROOT)/cocos2d-x-3.10/cocos/audio/include
$(SRCROOT)/cocos2d-x-3.10/cocos/editor-support
$(SRCROOT)/cocos2d-x-3.10/extensions
$(SRCROOT)/cocos2d-x-3.10/external
$(SRCROOT)/cocos2d-x-3.10/external/chipmunk/include/chipmunk
(2)、[targets] -- [Build Setting] -- [Header Search Paths]:
$(inherited)
$(SRCROOT)/cocos2d-x-3.10/cocos/platform/sos
$(SRCROOT)/cocos2d-x-3.10/cocos/platform/ios/Simulation
(3)、[targets] -- [Build Setting] -- [Library Search Paths]:
$(SRCROOT)/cocos2d-x-3.10/prebuilt/ios
$(PROJECT_DIR)
4.设置pch路径,使用 Prefix.pch 文件。如图:
第三步,配置Cocos2d-X开发所需框架,如图:
第四步,Cocos2d-X工程环境配置
1.Build Settings中配置,设置Valid Architectures ,设置处理器编译环境
如图:
2.Build Options ->Enable Bitcode 设置为NO
3.设置Other Linker Flages
$(_COCOS_LIB_IOS_BEGIN)
$(_COCOS_LIB_IOS_END)
-ObjC
如图:
4.设置Other C flages
-DNS_BLOCK_ASSERTIONS=1
如图:
5.设置
C Language Dialect 为 Compiler Default,如图:
6.设置 PreProcessor Macros
Debug:
USE_FILE32API
CC_TARGET_OS_IPHONE
COCOS2D_DEBUG=1
CC_ENABLE_CHIPMUNK_INTEGRATION=1
如图:
Release:
USE_FILE32API
CC_TARGET_OS_IPHONE
CC_ENABLE_CHIPMUNK_INTEGRATION=1
如图:
7.设置Apple
LLVM [7/8/9/10……] - Warnings - All languages,如图:
第五步,将原有的Cocos2d-X工程文件导入新搭建的ios原生项目中,分别对照“原有的Cocos2d-X工程”修改iOS原生项目,如图:
运行项目,大搞成功!!!
注意:如果运行失败,可能是iOS支持框架添加有误,也可能是工程配置文件配置有误!!!
项目报错:
1.类似 std::basic_string/std::string::find………………
解决方案:可能是因为导入的框架不合理或者方法不对,也可能是导入的框架类型或者版本不对,因此不支持C++编译环境,检查导入iOS支持的框架。或者删除重新导入支持库。
如果,仍然报错,就导入libstdc++.dylib或者libstdc++.6.0.9.dylib即可
2.类似 "_deflateReset",
referenced from:………………… "*******", referenced from:………………
可能是因为导入的框架不合理或者方法不对,也可能是导入的框架类型或者版本不对,因此不支持C++编译环境,检查导入iOS支持的框架。或者删除重新导入支持库。
或者检查工程配置文件的参数修改是正确…………
第一步,“Cocos2d-X源码”和“预编译静态库”准备
Cocos2d-X源码可在官网下载,如:
Cocos2d-X 预编译静态库生成方法: Cocos2d-x项目创建之 静态库生成
第二步,原生iOS项目导入“Cocos2d-X源码”和“预编译静态库”
1.预编译静态库导入:(本方法只导入“模拟器Debug”环境的静态库,其他环境静态库导入方法雷同!)
如图:
2.Cocos2d-X源码包导入,Cocos2d-X源码包粘贴复制放在 MyFirst项目 的一级目录中:(Cocos2d-X源码包,用于cocos项目开发过程中使用,相当于将官方API集成在工程本地文件中。用于开发过程中,代码API调用!)
如图:
3.Cocos2d-X源码包引用:(Cocos2d-X源码包,用于cocos项目开发过程中使用,相当于将官方API集成在工程本地文件中。用于开发过程中,代码API调用!)
(1)、[project] -- [Build Setting] -- [Header Search Paths]:
$(SRCROOT)/cocos2d-x-3.10
$(SRCROOT)/cocos2d-x-3.10/cocos
$(SRCROOT)/cocos2d-x-3.10/cocos/base
$(SRCROOT)/cocos2d-x-3.10/cocos/physics
$(SRCROOT)/cocos2d-x-3.10/cocos/math
$(SRCROOT)/cocos2d-x-3.10/cocos/2d
$(SRCROOT)/cocos2d-x-3.10/cocos/ui
$(SRCROOT)/cocos2d-x-3.10/cocos/network
$(SRCROOT)/cocos2d-x-3.10/cocos/audio/include
$(SRCROOT)/cocos2d-x-3.10/cocos/editor-support
$(SRCROOT)/cocos2d-x-3.10/extensions
$(SRCROOT)/cocos2d-x-3.10/external
$(SRCROOT)/cocos2d-x-3.10/external/chipmunk/include/chipmunk
(2)、[targets] -- [Build Setting] -- [Header Search Paths]:
$(inherited)
$(SRCROOT)/cocos2d-x-3.10/cocos/platform/sos
$(SRCROOT)/cocos2d-x-3.10/cocos/platform/ios/Simulation
(3)、[targets] -- [Build Setting] -- [Library Search Paths]:
$(SRCROOT)/cocos2d-x-3.10/prebuilt/ios
$(PROJECT_DIR)
4.设置pch路径,使用 Prefix.pch 文件。如图:
第三步,配置Cocos2d-X开发所需框架,如图:
第四步,Cocos2d-X工程环境配置
1.Build Settings中配置,设置Valid Architectures ,设置处理器编译环境
如图:
2.Build Options ->Enable Bitcode 设置为NO
3.设置Other Linker Flages
$(_COCOS_LIB_IOS_BEGIN)
$(_COCOS_LIB_IOS_END)
-ObjC
如图:
4.设置Other C flages
-DNS_BLOCK_ASSERTIONS=1
如图:
5.设置
C Language Dialect 为 Compiler Default,如图:
6.设置 PreProcessor Macros
Debug:
USE_FILE32API
CC_TARGET_OS_IPHONE
COCOS2D_DEBUG=1
CC_ENABLE_CHIPMUNK_INTEGRATION=1
如图:
Release:
USE_FILE32API
CC_TARGET_OS_IPHONE
CC_ENABLE_CHIPMUNK_INTEGRATION=1
如图:
7.设置Apple
LLVM [7/8/9/10……] - Warnings - All languages,如图:
第五步,将原有的Cocos2d-X工程文件导入新搭建的ios原生项目中,分别对照“原有的Cocos2d-X工程”修改iOS原生项目,如图:
运行项目,大搞成功!!!
注意:如果运行失败,可能是iOS支持框架添加有误,也可能是工程配置文件配置有误!!!
项目报错:
1.类似 std::basic_string/std::string::find………………
解决方案:可能是因为导入的框架不合理或者方法不对,也可能是导入的框架类型或者版本不对,因此不支持C++编译环境,检查导入iOS支持的框架。或者删除重新导入支持库。
如果,仍然报错,就导入libstdc++.dylib或者libstdc++.6.0.9.dylib即可
2.类似 "_deflateReset",
referenced from:………………… "*******", referenced from:………………
可能是因为导入的框架不合理或者方法不对,也可能是导入的框架类型或者版本不对,因此不支持C++编译环境,检查导入iOS支持的框架。或者删除重新导入支持库。
或者检查工程配置文件的参数修改是正确…………
相关文章推荐
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行!
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行!
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行! 推荐
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可!
- 创建 SWT 项目的原生库导入问题
- 在 MAC 上面创建 Cocos2d-x 的 iOS 项目
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可!
- cocos2d-x Tiled map editor 创建地图导入项目
- Cocos2d项目整体框架——创建“Test2d”的项目
- Mac下搭建eclipse android-cocos2d-x环境并创建android ndk新项目导入到eclipse运行
- COCOS2D-X 3.0在MAC下创建新IOS项目:
- cocos2d-x3.1基于Mac创建iOS项目
- COCOS2D-X 3.0在MAC下创建新IOS项目:
- cocos2d-x用create_project.py创建的IOS项目内存泄漏
- iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Xcode编写&编译代码,Android导入打包运行即可!
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可! 推荐
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Xcode编写&编译代码,Android导入打包运行即可!
- IOS与React Native混编,将RN框架使用CocoaPods集成到原生项目中
- 【iOS-Cocos2d游戏开发之二十一 】自定义精灵类并为你的精灵设置攻击帧以及动画创建!【二】 推荐
- maven如何创建项目并导入eclipse