1、使用命令创建新项目:
cocos new -p com.wegame.pig -l cpp -d E:\project\WePigNew FlappyBird
2、导入VS2012中出现的错误:
Cocos2d-x 3.0 Alpha 1开始 对目录结构进行了整合。结果有些附加项目也被在项目中被精简出去。
比如说如果你需要使用CocoStdio导出的JSON、或使用Extensions扩展库,libCocosStudio、libExtensions、libGUI都需要在你手动添加。
如果你碰到类似这样的错误“ fatal error C1083: 无法打开包括文件:“extensions/ExtensionMacros.h”: No such file or directory”。
可以采用下列的操作。
第一步:在项目中添加附加项目。
A:在“解决方案资源管理器”中找到整个解决方案,右击,选择“添加”->“现有项目”。在弹出的对话框中找到“项目目录/cocos2d/cocos/editor-support/cocostudio/proj.win32/libCocoStuido”点击确定。
B:在“解决方案资源管理器”中找到整个解决方案,右击,选择“添加”->“现有项目”。在弹出的对话框中找到“项目目录/cocos2d/cocos/gui/proj.win32/libGUI”点击确定。
C:在“解决方案资源管理器”中找到整个解决方案,右击,选择“添加”->“现有项目”。在弹出的对话框中找到“项目目录/cocos2d/extensions/proj.win32/libExtensions”点击确定。
在你导放完成之后,你的项目结构看起来像这样。
第二步:你需要在你的项目中引用这些刚导入的项目。
对你的项目右键,选择“引用...”。在弹出的属性页中点选下面的“添加新引用”。在弹出的子级对话框中勾选我们刚才刚加入的三个lib项目(如图),点击确定,这样就完成添加项目对库的引用。
第三步:为你的项目添加包含目录。
$(EngineRoot)
$(EngineRoot)cocos
$(EngineRoot)cocos\editor-support
最后编译一下,完成此次附加项目的添加。
3、访问网络错误:
2>GameOverScene.obj : error LNK2019: 无法解析的外部符号 "public: static classcocos2d::network::HttpClient * __cdeclcocos2d::network::HttpClient::getInstance(void)"(?getInstance@HttpClient@network@cocos2d@@SAPAV123@XZ),该符号在函数 "public: void __thiscallGameOverScene::submitUserData(void)"(?submitUserData@GameOverScene@@QAEXXZ) 中被引用
解决:
1、添加network项目(cocos2d\cocos\network)
2、加入引用和头文件路径
3、加入另外另个库 libcurl_imp.lib和 websockets.lib
4、到新项目中Android目录下运行:build_native.py
5、
修改Android.mk文件:引入库文件时,需要加入:
LOCAL_WHOLE_STATIC_LIBRARIES+=cocos_extension_static
$(call import-module,extensions)
6、无法启动:fatal error: cocos-ext.h: No such file or directory
解决:
LOCAL_SRC_FILES := $(MY_SRC_LIST)
LOCAL_C_INCLUDES := $(MY_ALL_DIRS)
LOCAL_C_INCLUDES+=$(LOCAL_PATH)/../../cocos2d/extensions ----新加入
7、重要:
1、编译错误:
cocos2dx3.0 error MSB3073: :VCEnd”已退出,代码为 4
去掉libcocos2d中的,下图所示部分。
2、运行错误:
2>LINK: fatal error LNK1104: 无法打开文件“E:\project\WePigNew\FlappyBird\proj.win32\Debug.win32\FlappyBird.exe”
==========生成:成功 1 个,失败 1 个,最新 6 个,跳过 0 个 ==========
解决方法:
时运行两个程序,需要先关闭正在运行的程序。
3、错误提示是:
make: *** No rule to make target `/cygdrive/d/cocos2d-x-2.1.4/projects/SandArt/proj.android/../../../extensions/AssetsManager/AssetsManager.cpp', needed by `obj/local/armeabi/objs/cocos_extension_static/AssetsManager/AssetsManager.o'. Stop.
解决方法:
删除工程目录proj.android下的两个文件夹 obj和lib 另个文件夹。
先只删除obj目录试试能否成功,如果不能成功,再删除lib目录。