/CityMgr/nativejni.cpp
SharedLibrary  : libnativejni.so
/cygdrive/G/Android.CityMgr/mobile.supervison/obj/local/armeabi/objs/nativejni/C
ityMgr/nativejni.o: In function `handleString(_JNIEnv*, char*)':
/cygdrive/G/Android.CityMgr/mobile.supervison/jni//CityMgr/nativejni.cpp:26: und
efined reference to `mbstowcs'

collect2: ld returned 1 exit status
make: *** [/cygdrive/G/Android.CityMgr/mobile.supervison/obj/local/armeabi/libna
tivejni.so] Error 1从错误看应该是连接mbstowcs方法时出现的错误,不知在makefile 文件中要如何设置?

解决方案 »

  1.   

    恩,这个函数是c标准库的,android是不支持,换吧
      

  2.   

    我要实现android jni中文转码功能。有相关的方法也可以。
      

  3.   

    #include <locale.h>
    #include <stdlib.h>
    就可以找到了
      

  4.   

    #include <locale.h>
    #include <stdlib.h>不是加了这个,就直接报错了。就不会是上面那个问题了
      

  5.   

    c标准库函数,加头文件,连接相应的LIB
      

  6.   

    undefined reference 这一看就是库文件问题,和h无关系,现在的国内开发者都疯了吗
      

  7.   

    是啊,你知道undefined reference是啥错误吗?连接过程中的
      

  8.   

    我什么都不懂 你懂的最多 最smart了 
    你诋毁我什么都行 别扣上国内开发者的帽子 国内开发者牛人数不胜数  你不在国内么?这真是天大的了不起呢 
      

  9.   

    大侠们。不用说那么远,我在做android的东西,我就像知道在makefile文件中应该加那个连接设置,要连那个库文件。LOCAL_LDLIBS := -ldl -llog 应该是写在这个节点里。我提问里就说了,想知道makefile怎么配置。不过大侠们根本没看吗!都说些其他的。
      

  10.   

    没人气啊!再发一帖,在给一百分。同一个问题。有解决方法也回一下,一起给分。
    http://topic.csdn.net/u/20110418/15/1230e8b7-0b2b-4100-b44e-4eba6173fc79.html?59758
      

  11.   

    把java,jni,c/C++的编码形式都改一下,都改成utf-8,这样最简单。要不就自己下一下iconv源码。写一个自己的转码程序。
      

  12.   

    也遇到这样的问题,查了半天网不知道怎么去转,有说去调JAVA层接口来转换的。
      

  13.   

    其实只不过是你这版本的mbstowcs函数被mbsrtowcs给代替了,加个宏定义吧