今天是儿童节,本来应该为小朋友们高高兴兴地过一天,但今天确实过得有点郁闷,因为我发了一天才解决了这个恶心的问题。问题是我在开发百度地图相关的应 用,因为工程中要引用百度API的JAR文件和SO文件,而我的工程又必须在LINUX命令行环境下编译,因此需要为项目编写一个MK文件来进行编译。
这个问题属性引用第三方库的问题,引用JAR文件的方法是先定义LOCAL_STATIC_JAVA_LIBRARIES
LOCAL_STATIC_JAVA_LIBRARIES := baidumap \
http://hi.baidu.com/cmdmac/item/43b8e0348b1c91f1e7bb7aa4
这是JAR文件库的别名,我这里用了两个别名,一个baidumap,一个是googlemap.别名是可以随便可以写的。
然后再定义LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES,
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libarity:libs/armeabi/baidumapapi.jar\
googlemap:libs/armeabi/maps.jar
这个变量是相应库对应的jar文件的路径,格式是 别名:JAR路径
引用第三方SO文件,在 eclipse工程里编译的时候,如果把so文件放在libs/armeabi/下的话,adt会直接给你自动把SO文件把包进去 。而在命令行下进行的话应该定义LOCAL_JNI_SHARED_LIBRARIES,
LOCAL_JNI_SHARED_LIBRARIES := libBMapApiEngine
这样还不行,这样直接编译会引发错误:找不到out/target/product/***/obj/lib/******.so
这时你需要把你的so文件放到out/target/product/***/obj/lib目录下。
这样再编译就没问题了。
另外在MK中文件中include $(BUILD_PACKAGE)是要编译这个工程,不加这个不会编译,MK文件具体写法请GOOGLE吧,呵呵。
相关推荐
3.Android.mk或Android.bp中引用Android的第三方(jar、aar、so)、Androidx的类库等的使用方法 4.Android.mk或Android.bp编译生成Apk、静态库、动态库、可执行文件等的使用方法 5.Android系统定制有源码App或无源码...
主要介绍了Android.mk文件中添加第三方jar文件及引用第三方jar包的方法,需要的朋友可以参考下
主要介绍了Android.mk引入第三方jar包和so库文件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
本篇文章主要介绍了详解android.mk中引用第三方库的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
android 拷贝文件的mk脚本,bin,lib
自动生成android.mk文件,方便,快捷
全面介绍Android.mk文件语法规范
将android.mk转换为android.bp
Android.bp 文件首先是 Android 系统的一种编译配置文件,是用来代替原来的 Android.mk 文件的。在 Android7.0 以前,Android 都是使用 make 来组织各模块的编译,对应的编译 配置文件就是 Android.mk。在 Android...
自己整理的一个android.mk文件的介绍,看了之后你就基本能自己写android.mk了 可能比较乱 但是很详细
android.mk文件语法详述及简单实例
一个Android.mk file用来向编译系统描述你的源代码。具体来说:-该文件是GNU Makefile的一小部分,会被编译系统...你可以在每一个Android.mk file中定义一个或多个模块,你也可以在几个模块中使用同一个源代码文件。
一句一句翻译的NDK Android.mk帮助文档,帮助英语比我还差的哥们熟悉NDK的makefile的编写方法。个人觉得翻译的还算比较准确,因为基本上也都是测试过的,是根据实践参考文档翻译得来。可能是目前为止翻译的最通顺...
使用它来编译程序时,不管是动态库、可执行的二进制文件,还是Jar库、APK包,只要沿着一个简单的思路来做三大步就可以了:清除旧变量,设置新变量,调用编译函数。 明白了以后,发现Makefile语法不是问题,有很多...
android studio 配置gradle 使用android.mk进行编译jni,简单的jni调用,使用android.mk进行编译,注意事项:app下的gradle,以及编译生成的 .h文件,复制修改为 .cpp时,里面的文件的宏逻辑,最好去掉这个宏(#...
Android_makefile编译系统_Android.mk_文件语法规范 对Android.mk的讲解,共9页,值得一看。
opus NDK 编译 Android.mk文件 仅供参考
ffmpeg0.10的android.mk