自从加入了GUI控件后,build_native.py 打包不成功。

如题。求大神帮忙。

下面是command line中的输出信息。

— Begin quote from ____

F:\cocos2dxprojects\HelloCocos\proj.android>build_native.py
We will remove this script next version,you should use cocos console to build an
droid project.

The Selected NDK toolchain version was 4.9 !
Android NDK: WARNING: APP_PLATFORM android-19 is larger than android:minSdkVersi
on 9 in ./AndroidManifest.xml
make.exe: Entering directory `F:/cocos2dxprojects/HelloCocos/proj.android’
Compile++ thumb: cocos2dcpp_shared <= HelloWorldScene.cpp
Gdbserver : libs/armeabi/gdbserver
Gdbsetup : libs/armeabi/gdb.setup
In file included from jni/…/…/cocos2d/cocos/3d/…/base/CCRef.h:29:0,
from jni/…/…/cocos2d/cocos/3d/…/cocos2d.h:41,
from jni/…/…/Classes/HelloWorldScene.h:4,
from jni/…/…/Classes/HelloWorldScene.cpp:1:
jni/…/…/Classes/HelloWorldScene.cpp: In member function ‘virtual bool HelloWor
ld::init()’:
jni/…/…/cocos2d/cocos/3d/…/platform/CCPlatformMacros.h:221:67: warning: forma
t ‘%i’ expects argument of type ‘int’, but argument 2 has type ‘double’ -Wforma
t=]
#define CCLOG(format, …) cocos2d::log(format, ##VA_ARGS)
^
jni/…/…/Classes/HelloWorldScene.cpp:142:2: note: in expansion of macro ‘CCLOG’

CCLOG("%i",sp1->getGlobalZOrder());
^
jni/…/…/Classes/HelloWorldScene.cpp: In member function ‘virtual void HelloWor
ld::update(float)’:
jni/…/…/Classes/HelloWorldScene.cpp:180:13: error: ‘Sleep’ was not declared in
this scope
Sleep(1000);
^
At global scope:
cc1plus.exe: warning: unrecognized command line option “-Wno-extern-c-compat”
cc1plus.exe: warning: unrecognized command line option “-Wno-extern-c-compat”
make.exe: *** [obj/local/armeabi/objs-debug/cocos2dcpp_shared///Classes/Hell
oWorldScene.o] Error 1
make.exe: Leaving directory `F:/cocos2dxprojects/HelloCocos/proj.android’
Traceback (most recent call last):
File “F:\cocos2dxprojects\HelloCocos\proj.android\build_native.py”, line 149,
in
build(opts.ndk_build_param,opts.android_platform,opts.build_mode)
File “F:\cocos2dxprojects\HelloCocos\proj.android\build_native.py”, line 134,
in build
do_build(cocos_root, ndk_root, app_android_root,ndk_build_param,sdk_root,and
roid_platform,build_mode)
File “F:\cocos2dxprojects\HelloCocos\proj.android\build_native.py”, line 70, i
n do_build
raise Exception(“Build dynamic library for project " + app_android_root +
" ] fails!”)
Exception: Build dynamic library for project F:\cocos2dxprojects\HelloCocos\pr
oj.android ] fails!

F:\cocos2dxprojects\HelloCocos\proj.android>

— End quote

下面是我的Android.mk中的内容,没有进行改动,列出是因为感觉与网上有些内容不一样,供大神参考(我的cocos是3.3final的)

— Begin quote from ____

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

(call import-add-path,(LOCAL_PATH)/…/…/cocos2d)
(call import-add-path,(LOCAL_PATH)/…/…/cocos2d/external)
(call import-add-path,(LOCAL_PATH)/…/…/cocos2d/cocos)

LOCAL_MODULE := cocos2dcpp_shared

LOCAL_MODULE_FILENAME := libcocos2dcpp

LOCAL_SRC_FILES := hellocpp/main.cpp
…/…/Classes/AppDelegate.cpp
…/…/Classes/HelloWorldScene.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/…/…/Classes

LOCAL_STATIC_LIBRARIES := cocos2dx_static

include $(BUILD_SHARED_LIBRARY)

$(call import-module,.)

— End quote

有人能帮我吗?

今天发现是因为我使用了一个Sleep()函数,把它删了就好了,可能我没有include它的头文件,也可能android不支持#include <Windows.h>。

所以跟我是否加了UI控件无关。

ni/…/…/Classes/HelloWorldScene.cpp:180:13: error: ‘Sleep’ was not declared in
this scope
Sleep(1000);
^
At global scope:

是的,结贴。