记录一下最近开发思路:
(1)要在android上编译c/c++项目,首先想到的就是androidNDK了开发了,android内核是基于linux的,在linux上进行androidNDK开发只要下载JDK,Eclipse,android
Sdk,androidNDK,在设置好环境就好了,具体参见博文:http://blog.csdn.net/typ0520/article/details/8019356
(2)在windows下进行开发,要安装一个linux交叉编译器,通常选择是cygwin,安装过程网上教程也很多,可以参考博文:
安装好交叉编译环境之后,就要安装和linux上一样的工具,设置好环境变量,具体参见博文:http://blog.sina.com.cn/s/blog_5a3834930101b3kd.html
(3) 要进行NDK开发,首先要熟悉android makefile文件的格式写法,即android.mk文件,最好的参考是android自带的说明文档,网上也有不少讲解的,具体的在此不在详述。(博文参考:http://www.cnblogs.com/leaven/archive/2011/01/25/1944688.html)
(4)具体的开发过程简单实例如下博文:http://blog.csdn.net/redoffice/article/details/6654714;
以上成功了,就可以进行比较大规模的c++项目编译了;因为我所涉及的项目很庞大,数据结构复杂;用到的android支持的c++库是GNU的那个STL,这个库支持C11,
但是我在编译的过程中还是遇到了不少问题,源文件是在linux下运行编译的,按说不会出现太大的问题,后来修改之后也编译成功静态库了,但是使用JNI进行调用的过程中出现了问题;我怀疑是编译的静态库出现的问题;直接使用linux上编译的静态库也是不行;郁闷纠结后打算使用其他的arm编译器尝试,但都失败了,哪位大侠有什么好的想法,可以交流啊。我想知道的一个问题是android上可以调用在linux(x86)下编译好的静态库吗?我之前试过但是没有成功,在网上见过类似的帖子,说是可以的~矛盾中。。。。