cygwin 生成.so
来源:互联网 发布:windows字体文件夹 编辑:程序博客网 时间:2024/06/06 00:16
一、下载android NDK
您可以下载NDK r4 for Windows或NDK r5 for Windows安装包,下载地址:
http://developer.android.com/sdk/ndk/index.html
下载后解压缩到你的工作目录,Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等内容。samples下面包含几个实例开发演示项目,第一次接触NDK开发,建议先从示例开始。
二、下载安装Cygwin
由于NDK开发大都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要模拟Linux模拟编译环境,下载地址:http://www.cygwin.com/
三、验证Cygwin环境
安装完成后,先运行Cygwin一次(Cygwin.bat),以便创建一些用户环境文件,分别输入
make -v 和 gcc -v 如果检测成功,会有make和gcc相关版本信息打印出来。
四、配置NDK路径设置
可以在cygwin中通过vim修改,也可以在windows安装目录中修改 home\<你的用户名>\.bash_profile 文件中最后添加环境变量NDK=/cygdrive/e/Andriod/develop/android-ndk-r4
export NDK
其中NDK=/cygdrive/<你的盘符>/<android ndk 目录> ,"NDK"这个名字随便起,以后经常用不要太长。
重启cygwin,输入:cd $NDK 可进入ndk对应目录说明设置OK。
五、编译演示工程
现在就可以编译相关NDK工程了(一些用c/c++写的程序),编译方法如下:
A、在cygwin命令行下,进入android项目工作目录:
cd $NDK
B、依次进入samples\hello-jni目录,(完整路径示例: E:\Andriod\develop\android-ndk-r4\samples\hello-jni)
C、运行 $NDK/ndk-build
注意:该命令$NDK和/ndk-build是连接到一起的,中间没有空格,实际使用时是打入完整的$NDK/ndk-build,不要只打ndk-build。
D、正常编译完成后会在你的项目libs/armeabi目录下生成对应的 .so文件
六、导入静态目标库到Android项目
编译完成后会得到*.so静态目标库后,就可以导入工程环境Eclipse Android项目中使用,注意,NDK编程并非一定要把这个目标库导入Android项目使用,除了本步骤描述的使用方法之外,还有Android源码直接修改、编译,然后烧录到测试机的开发方式,那样可以实现应用程序默认安装、权限开机提升等等更“彻底”的功能。综合一下:
本步骤演示属于NDK目标库+Andriod APK样式,此外还有Android源码直接开发、直接编译方式(确切一点已经淡化Android所谓的工程概念了,当然源码开发目前似乎还无法直接在Windows下进行,好像必须使用Linux家族系统进行,天缘稍后文章会有所涉及)
使用方法如下(示例):
A、在Eclipse中新建一个工程HelloJni,HelloJni.java中的代码可参考NDK对应 sample下的演示代码(android-ndk-r4\samples\hello-jni\tests\src\com\example \HelloJni)调用方法。
B、将NDK编译项目目录下的jni和libs文件夹拷贝到新建工程目录下
注意这两个文件夹要和工程中的src和res文件在同一目录下。然后进入Eclipse中刷新工程(会看到多出两个文件夹)。
C、运行Eclipse项目,就可以在虚拟机上看到hello-jni.c函数中输出字符串。
D、后续您可以试着修改库源程序或项目JAVA程序来熟悉NDK整个开发过程
- cygwin生成so
- cygwin 生成.so
- 使用cygwin生成.so库文件
- Cygwin编译生成So文件时出错
- 使用NDK-r8与Cygwin编译生成so库
- 利用Cygwin生成Andriod JNI动态库SO
- Android NDK学习(4)使用cygwin生成.so库文件
- android工程中使用speex源码通过Cygwin生成libspeex.so
- Android安装NDK运行环境无需cygwin自动编译生成SO
- cygwin跨平台移植开发系列2--so2lib实用工具(把cygwin生成的so或dll转换成vc可调用的lib)
- Cygwin 下编译Jni生成So文件时报错Could not find application project directory的解决办法.
- android SDK使用cygwin编译.so文件
- cygwin+swig生成Android库
- 生成.so的makefile
- android生成so文件
- android生成so文件
- 生成so文件
- JNI生成so
- 第13堂课后作业
- MFC视图模式下添加WORD编辑框
- 黑马程序员__JAVA基础__集合(二)
- 修改Ubuntu下的jenkins端口号
- C51与单片机系统多级菜单的模块化设计
- cygwin 生成.so
- 二分法、快速排序
- CSS3 圆角(border-radius)
- 工厂方法模式
- 易错点:C++ switch case中定义变量
- 优化技巧分享:把内存消耗降低至原来的1/20
- Daily-C-Study(20):C语言#pragma预处理
- hdu 4325
- Tiny210 android 2.3 在Ubuntu下编译问题