在本机(NDK)</math.h>中使用<math.h>中的任何函数时,android上的链接错误不满意

时间:2011-11-22 13:15:13

标签: android-ndk

当我尝试在Android上启动基于C ++的应用程序时,我得到了着名的不满意的链接错误。我已经尝试了几种解决方法,并发现当我注释掉所有对math.h函数的调用(如sinsqrt)时,应用程序会正确启动。

我只将我的.so库与libGLESv1_CM.a相关联,并在Java中调用:

static {
    try
    {
        System.loadLibrary("GLESv1_CM");
        System.loadLibrary("Game");
    }
    catch(UnsatisfiedLinkError error)
    {
        Log.e("MyGame", "Failed to launch game");
    }
}

我错过了什么吗?

1 个答案:

答案 0 :(得分:4)

您应该将其与libm链接。将以下内容添加到Android.mk文件中:

LOCAL_LDLIBS += -lm