【随笔记】NDK 编译开源库 SQLite3
NDK 编译环境搭建请参考:
【工作笔记】NDK 编译开源库 nghttp2/openssl/curl_lovemengx的博客-CSDN博客
一、下载源代码
wget https://github.com/sqlite/sqlite/archive/refs/tags/version-3.38.0.tar.gz
tar -zxvf version-3.38.0.tar.gz
二、编译配置脚本
#!/bin/bashexport TOOLCHAIN=/opt/ndk/android-ndk-r19c/toolchains/llvm/prebuilt/linux-x86_64
export CC="$TOOLCHAIN"/bin/armv7a-linux-androideabi19-clang
export CXX="$TOOLCHAIN"/bin/armv7a-linux-androideabi19-clang++
export TOOL=arm-linux-androideabi
export LD=$TOOLCHAIN/bin/${TOOL}-ld
export AR=$TOOLCHAIN/bin/${TOOL}-ar
export RANLIB=$TOOLCHAIN/bin/${TOOL}-ranlib
export STRIP=$TOOLCHAIN/bin/${TOOL}-strip
export PATH="$TOOLCHAIN"/bin:"$PATH"
export ARCH_FLAGS="-mthumb"
export CFLAGS="${ARCH_FLAGS} -fpic -ffunction-sections -funwind-tables -fstack-protector-all -fno-strict-aliasing"
export CXXFLAGS="${CFLAGS} -frtti -fexceptions"./configure --prefix=`pwd`/build/sqlite3/ \--with-sysroot=$TOOLCHAIN/sysroot \--host=arm-linux-androideabi \--enable-shared \--disable-static \--disable-tclif [ $? -eq 0 ]; thenmake -j16 && make install
fi
三、执行编译
cp android_build_sqlite3.sh sqlite-version-3.38.0/
cd sqlite-version-3.38.0
./android_build_sqlite3.sh
【随笔记】NDK 编译开源库 SQLite3相关推荐
- Makefile学习笔记07|编译静态库并通过ifeq语句
Makefile学习笔记07|编译静态库并通过ifeq语句 希望看到这篇文章的朋友能在评论区留下宝贵的建议来让我们共同成长,谢谢. 这里是目录 本篇与上一篇有较多联系,有兴趣的可以先看上一 ...
- NDK编译第三方库,通过JNI调用。
刚接触NDK,JNI的知识,在网上找了很久的资料.各种版本的讲解让人眼花缭乱,下面我来介绍一下怎样通过NDK编译第三方库,然后经过JNI封装,最后在android平台上实现调用. 写着玩,大神勿喷.如 ...
- Android NDK 编译 三方库记录 及 jni库封装问题
因工作需求, 要将原先的c++库跨平台编译,在Android上运行, 其依赖了几个第三方库, 也需要一起编译, 在此做个记录 所需工具(centos 系统上完成) 1. cmake 3.15.6 2. ...
- linux ndk编译静态库,Android开发教程:NDK编译静态库失败
Android---NDK编译静态库失败 Android.mk 相关编译文件: include $(CLEAR_VARS) LOCAL_MODULE := libdvnca LOCAL_SRC_ ...
- 10.29 工作笔记 ndk编译C++,提示找不到头文件(ndk-build error: string: No such file or directory)...
ndk编译C++.提示找不到头文件(ndk-build error: string: No such file or directory) 被这个问题弄得愁眉苦脸啊.心想为啥一个string都找不到呢 ...
- Android开发实践:在任意目录执行NDK编译
本文暂时不讲述如何用NDK编译第三方开源代码库,而是先以简单的例子讲述如何在任意目录把自己写的C代码编译成Android可使用的静态库/动态库. 1. 准备环境 首先,你得安装了Android的NDK ...
- 【Android开发】:在任意目录执行NDK编译
2019独角兽企业重金招聘Python工程师标准>>> 文以简单的例子讲述如何在任意目录把自己写的C代码使用NDK提供的交叉编译该工具来编译成Android可使用的静态库/动态库. ...
- android jni不适用ndk,Android NDK编译之undefined reference to 'JNI_CreateJavaVM'
利用Android NDK编译动态库,在C文件中调用了两个JNI函数:JNI_GetDefaultJavaVMInitArgs和JNI_CreateJavaVM.编译的时候始终报以下错误: XXX: ...
- 开源库UniTask笔记
内容来源:up主游戏石匠,仅作笔记,推荐关注该up主. UniTask是Github上的开源库,为Unity提供一个高性能异步方案,可以代替协程实现异步操作,中文文档 优点: 不需要依赖于MonoBe ...
- librtmp开源库与android平台编译记录
一.编写目的 为了记录编译librtmp开源库过程遇到的问题,帮助后来人提供参考,希望本文能为大家提供参考. 二.简介(官方介绍) The Real-Time Messaging Protocol ( ...
最新文章
- MFC 重设对话框的尺寸
- 远程访问mysql设置
- 导入外部项目无法识别为Web项目无法部署到tomcat
- Windows Phone 7 自定义控件库
- ARM指令寻址方式之: 数据处理指令的寻址方式
- 每日涉猎技术点存档(2019年02月)
- 纯php mysql_【总结】纯php 操作 mysql 数据库
- 图像处理 --- 三、图像变换 3.2 图像的几何变换
- 井下关于风速的规定_矿井有害气体最高允许浓度、温度、风速的规定
- POJ 2482 Stars in Your Window(线段树)
- hive-05-Execution Error, return code 3 from org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask
- linux(Ubuntu)常用命令整理 -- 基础篇 -- 持续更新
- python defaultdict(list)_Python collections.defaultdict() 与 dict的使用和区别
- 【数学建模】2021年美赛C题思路(预测模型和图像识别)【含Matlab源码 245期】
- Qt实战开发-数字软键盘
- 学习帮——提高智商、改善记忆力的120种绝佳方法!
- 使用QT制作的简易计算器
- 黎明前的黑夜如此漫长
- 记录五年前的天马行空的想象
- 快讯 | 科技部公布首批国家人工智能创新平台名单,BAT+科大讯飞入选