3.3rc1 apk打包失败

bogon:proj.android_no_anysdk mac$ ./build_apk.sh -api 20 -nosign
*******************build mode: debug
exec: java -version
java version “1.6.0_65”
Java™ SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot™ 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)


exec: /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk/build_native.sh

  • config:
    ANDROID_NDK_ROOT = /Users/mac/Documents/SVN/Android/android-ndk-r9d
    COCOS2DX_ROOT = /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk/…/…/cocos2d-x
    APP_ROOT = /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk/…/…/…
    APP_ANDROID_ROOT = /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk
  • cleanup
  • copy scripts
  • copy resources
  • copy config

Using prebuilt externals
Android NDK: WARNING: APP_PLATFORM android-19 is larger than android:minSdkVersion 9 in ./AndroidManifest.xml
make: Entering directory /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk' Gdbserver : libs/armeabi/gdbserver Gdbsetup : libs/armeabi/gdb.setup SharedLibrary : libcocos2dlua.so /Users/mac/Documents/SVN/Android/android-ndk-r9d/sources/cxx-stl/llvm-libc++/libcxx/include/regex:1115: error: undefined reference to 'std::__1::__get_collation_name(char const*)' /Users/mac/Documents/SVN/Android/android-ndk-r9d/sources/cxx-stl/llvm-libc++/libcxx/include/regex:1175: error: undefined reference to 'std::__1::__get_classname(char const*, bool)' /Users/mac/Documents/SVN/Android/android-ndk-r9d/sources/cxx-stl/llvm-libc++/libcxx/include/regex:1115: error: undefined reference to 'std::__1::__get_collation_name(char const*)' ./obj/local/armeabi/libcocos2dxinternal.a(CCNode.o):/Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk/../../cocos2d-x/cocos/./2d/CCNode.cpp:function vtable for std::__1::__match_any_but_newline<char>: error: undefined reference to 'std::__1::__match_any_but_newline<char>::__exec(std::__1::__state<char>&) const' clang++: error: linker command failed with exit code 1 (use -v to see invocation) make: *** Error 1 make: Leaving directory /Users/mac/Documents/SVN/user/QGame/frameworks/runtime-src/proj.android_no_anysdk’


Error: Build native lib failed!

build return value: 2

你为什么需要指定-api 20呢?

因为我环境只安装了20,默认是19会找不到

从提示信息看,是在build_native里一开始就出错了,在C++模板里报错的,这种情况一般是Android的SDK没装好

之前rc0是可以打包的,我下个sdk19看看

sdk 19.1也不行

原因找到了,是龙骨的mk配置文件导致的

我打包出来的apk 安装不了。。

报这个错:install runtime error:INSTALL_PARSE_FAILED_NO_CERTIFICATES
网上查是没有签名

但是打包会生成两个apk,一个签名的,一个没签名的,两个都安装不了
请问是哪里没操作对呢?

build_apk.sh好像不行,我是用下面的方法:

1 执行proj.android下面的build_native.sh
2 导入项目到eclipse(adt)了,用android tools 导出apk

这样啊 我试下
那 build_apk.sh 这个是bug 么。。。还是用法不对

应该是bug,你看log有说什么被废弃之类的

— Begin quote from ____

引用第6楼footprint于2014-12-03 22:02发表的 :
原因找到了,是龙骨的mk配置文件导致的 http://www.cocoachina.com/bbs/job.php?action=topost&tid=273345&pid=1189451

— End quote

我也是用了dragonbones,也遇到了同样的问题,请教是如何解决的呢?

把render/cocos2d-x-3.2/android_demo下的Android.mk文件替换成下面的内容就好了

LOCAL_PATH := (call my-dir) include (CLEAR_VARS)

LOCAL_MODULE := dragonbones_static

LOCAL_MODULE_FILENAME := libdragonbones

LOCAL_SRC_FILES := …/…/…/animation/Animation.cpp
…/…/…/animation/AnimationState.cpp
…/…/…/animation/TimelineState.cpp
…/…/…/animation/WorldClock.cpp
…/…/…/core/Armature.cpp
…/…/…/core/Bone.cpp
…/…/…/core/Object.cpp
…/…/…/core/Slot.cpp
…/…/…/events/EventData.cpp
…/…/…/factories/BaseFactory.cpp
…/…/…/parsers/BaseDataparser.cpp
…/…/…/parsers/ConstValues.cpp
…/…/…/parsers/XMLDataParser.cpp
…/…/…/parsers/dbtinyxml2.cpp
…/DBCCArmature.cpp
…/DBCCArmatureNode.cpp
…/DBCCFactory.cpp
…/DBCCSlot.cpp

LOCAL_C_INCLUDES :=
(LOCAL_PATH)/.. \ (LOCAL_PATH)/…/…/…
(LOCAL_PATH)/../../../../../../cocos/2d \ (LOCAL_PATH)/…/…/…/…/…/…/external/lua/tolua
(LOCAL_PATH)/../../../../../../external/lua/luajit/include \ (LOCAL_PATH)/…/…/…/…/…/…/cocos/scripting/lua-bindings/manual

LOCAL_EXPORT_C_INCLUDES :=
(LOCAL_PATH)/.. \ (LOCAL_PATH)/…/…/…

LOCAL_CFLAGS += -fexceptions

LOCAL_STATIC_LIBRARIES := cocos2dx_internal_static

include $(BUILD_STATIC_LIBRARY)

谢谢,已经解决!!再问个问题,mk里,特别是Local_Cflags的参数都在哪里可以查阅啊?