【Android】在ecplise上配置ADT, SDK, NDK以及用C/C++代码生成其他平台.so库的简单流程(Ubuntu 14.04)
来源:互联网 发布:linux run parts 编辑:程序博客网 时间:2024/06/04 19:24
文中有些东西不科学上网下载不了,可以从这里下:https://pan.baidu.com/s/1skIr0WP
一、JDK(JAVA SDK)安装
sudo apt-get install openjdk-7-jdk
二、Eclipse去官网下载安装就好。
三、安装ADT步骤:
1.先去下载:dl.google.com/android/ADT-23.0.2.zip
2.打开eclipse 》》help》》Install New Software》》add,选上面下载的zip包,根据提示安装好,最后重启eclipse。
四、安装Android SDK
下载:http://dl.google.com/android/android-sdk_r24.2-linux.tgz
tar -xvf android-sdk_r24.2-linux.tgzcd android-sdk-linux/tools./android update sdk --no-uivi ~/.zshrcexport PATH=${PATH}:$HOME/sdk/android-sdk-linux/platform-tools:$HOME/sdk/android-sdk-linux/tools:$HOME/sdk/android-sdk-linux/build-tools/22.0.1/source ~/.zshrcsudo apt-get install libc6:i386 libstdc++6:i386sudo apt-get install zlib1g:i386
上面update那一步很慢很慢,而且还会出现connect refused的情况,无视就好,耐心等,可以去看一部电影。
打开eclipse》》Window》》Preferences》》Android,选择SDK目录位置,apply。
五、配置NDK
1.先去下载:https://developer.android.google.cn/ndk/downloads/index.html
2.解压缩
3.打开eclipse》》Window》》Preferences》》Android》》NDK,选择NDK目录位置。
六、简单说下用C/C++代码生成可供ARM用的.so库的流程
1.创建android项目
2.将C/C++代码放入jni目录
3.在src目录下创建source folder,写.java文件
4.上面Build右边有个带红色文件夹的Build按钮,
打开External Tools Configurations,
在jni目录下生成.h头文件。
5.根据头文件修改C/C++代码成接口形式
6. 下载并解压OpenCV-2.4.9-android-sdk
7.在jni目录下创建Android.mk文件
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)####################################### change this folder path to yoursNCNN_INSTALL_PATH := /home/hans/ncnn/build-android-armv7 #####改include $(CLEAR_VARS)LOCAL_MODULE := ncnn ####改LOCAL_SRC_FILES := $(NCNN_INSTALL_PATH)/libs/armeabi-v7a/libncnn.a ####改include $(PREBUILT_STATIC_LIBRARY)include $(CLEAR_VARS)##################################################default#OPENCV_CAMERA_MODULES:=off#OPENCV_INSTALL_MODULES:=offOPENCV_INSTALL_MODULES:=on#OPENCV_LIB_TYPE:=SHAREDinclude /home/hans/eclipse/OpenCV-2.4.9-android-sdk/sdk/native/jni/OpenCV.mk ####改#####################################LOCAL_MODULE := FMInterface ####改LOCAL_SRC_FILES := featureMap.cpp ###改######################################LOCAL_C_INCLUDES += $(NCNN_INSTALL_PATH)/install/include ####改LOCAL_STATIC_LIBRARIES := ncnn ####改LOCAL_CFLAGS := -O2 -fvisibility=hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-mathLOCAL_CPPFLAGS := -O2 -fvisibility=hidden -fvisibility-inlines-hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-mathLOCAL_LDFLAGS += -Wl,--gc-sectionsLOCAL_CFLAGS += -fopenmpLOCAL_CPPFLAGS += -fopenmpLOCAL_LDFLAGS += -fopenmpLOCAL_LDLIBS += -lm -llog -landroid -lz -ljnigraphicsinclude $(BUILD_SHARED_LIBRARY)
8.上面Build右边有个带红色文件夹的Build按钮,
打开External Tools Configurations,
Location找到NDK中ndk-build路径,
Working Directory可以统一填写“ ${project_loc}${system_property:file.separator} ”
Refresh选第三个,同上
Build选第二个,同上
单击带红色文件夹的Build按钮,选ndk_build。
出现libs和obj目录。我们要的.so库就在libs目录下的armeabi目录中。
r10以后版本的NDK都没有了samples目录,也就没有了hello-jni这个样例。
我这里发出来:http://download.csdn.net/download/renhanchi/9977784
- 【Android】在ecplise上配置ADT, SDK, NDK以及用C/C++代码生成其他平台.so库的简单流程(Ubuntu 14.04)
- Android Eclipse+ADT+SDK+NDK+OpenGL在Ubuntu进行安卓纯C/C++开发实现
- Android studio 集成ndk环境,生成so库,并在其他项目上引用
- Android调用so库(c语言编写) Codeblocks+adt-win-x86+ndk-r9c
- 【Tech-Android-Jni】在Ecplise中配置新的Run命令,用于生成.so文件
- android ndk 单C源文件 生成SO
- JNI开发(一) 简单的C代码打包成SO库以及项目如何调用SO库
- Windows平台使用NDK编写在Android上运行的C/C++标准程序
- android studio NDK开发配置以及生成SO文件
- Ubuntu下Android NDK配置及生成so文件步骤
- android studio ndk-build 编译C生成.so文件(ndk基础篇)
- android中用ndk编译c代码为so库,供jni调用(一)
- 在Ecplise上搭建C\C++环境
- android studio NDK使用,编译c生成.so实践记录
- android studio NDK使用,编译c生成.so实践记录
- android studio NDK使用,编译c生成.so实践记录
- Android使用JNI调用C/C++生成的.so库的流程(功能:apk卸载时调用web页面)
- Linux下的C开发环境,Java开发环境,ecplise+cdt+ndk开发环境配置一条龙(未完待续)
- poi3.16读取xlsx excel2007+的官方例子
- 目标检测4 Faster R-CNN
- 单例模式
- 关于自动化运维的一些思考
- Function.prototype.bind及其polyfill分析
- 【Android】在ecplise上配置ADT, SDK, NDK以及用C/C++代码生成其他平台.so库的简单流程(Ubuntu 14.04)
- 正则表达式取url查询参数字符串
- 关于datagrid 垂直滚动条设置
- C#读取excel文件,生成json
- abap中VIEW_MAINTENANCE_GIVEN_DATA的用法
- junit 单元测试报错:java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
- 交叉表格sql语句
- 2017年9月 bug总结
- LeetCode Identical Binary Tree 相同二叉树