急急急,cocos2d-x 3.14.1 编译和打包报错问题

引擎组的大大麻烦来看看怎么解决
项目都是新建的空项目
环境:cocos2d-x 3.14.1
NDK: android-ndk-r10e, android-ndk-r13b
Windows-10 64位操作系统

用的这条指令 cocos run -p android --android-studio --ap android-19
编译so的时候用android-19就报下面这个错
[armeabi] Gdbsetup : libs/armeabi/gdb.setup
[armeabi] SharedLibrary : libcocos2dlua.so
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/scripting/lua-bindings/proj.android/…/…/…/…/external/lua/luasocket/usocket.c:79: error: undefined reference to ‘signal’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/editor-support/cocostudio/CCSSceneReader.cpp:550: error: undefined reference to ‘atof’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/editor-support/cocostudio/WidgetReader/ButtonReader/ButtonReader.cpp:306: error: undefined reference to ‘atof’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/editor-support/cocostudio/WidgetReader/ButtonReader/ButtonReader.cpp:310: error: undefined reference to ‘atof’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/editor-support/cocostudio/WidgetReader/ButtonReader/ButtonReader.cpp:314: error: undefined reference to ‘atof’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./base/ccRandom.h:103: error: undefined reference to ‘rand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./base/ccRandom.h:117: error: undefined reference to ‘rand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./2d/CCActionGrid3D.cpp:509: error: undefined reference to ‘rand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./2d/CCActionGrid3D.cpp:510: error: undefined reference to ‘rand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./2d/CCActionTiledGrid.cpp:278: error: undefined reference to ‘srand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./2d/CCActionTiledGrid.cpp:603: error: undefined reference to ‘srand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./base/CCConsole.cpp:1224: error: undefined reference to ‘srand’
D:/workSpace/test_1/MyLuaGame/frameworks/cocos2d-x/cocos/./base/CCConsole.cpp:1253: error: undefined reference to ‘srand’
collect2.exe: error: ld returned 1 exit status
make.exe: *** [obj/local/armeabi/libcocos2dlua.so] Error 1
make.exe: Leaving directory `D:/workSpace/test_1/MyLuaGame/frameworks/runtime-src/proj.android’

用android-22编译so就没问题,但打包到手机上就闪退,报错log是这个
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.UnsatisfiedLinkError: Cannot load library: soinfo_relocate(linker.cpp:975): cannot locate symbol “signal” referenced by “libcocos2dlua.so”…
at java.lang.Runtime.loadLibrary(Runtime.java:365)
at java.lang.System.loadLibrary(System.java:514)
at org.cocos2dx.lib.Cocos2dxActivity.onLoadNativeLibraries(Cocos2dxActivity.java:248)
at org.cocos2dx.lib.Cocos2dxActivity.onCreate(Cocos2dxActivity.java:264)
at android.app.Activity.performCreate(Activity.java:5125)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2289)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2377)
at android.app.ActivityThread.access$600(ActivityThread.java:167)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1356)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5341)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:929)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:696)
at dalvik.system.NativeStart.main(Native Method)

电脑上还有coco2d-x 3.10,试了下报错还是一样的

我试一下。

闪退的手机android版本是4.x吧~?

print "我之前好像遇到过~"

@panni1843 我没有r13b,用r13编译没问题啊。我是用的命令是:

cocos compile -p android --android-studio --ap android-19

可以正确链接生成.so文件。

这样代码使用的是std::rand啊。你是否使用了错误的引擎版本?

昨晚认真梳理了下,现在没问题了,应该是环境变量设置问题,之前设置过好几个版本,谢谢

恩,是的,已经解决了,谢谢