Ubuntu下交叉编译nbis_v4_2_0为Android的步骤与技巧
5星 · 超过95%的资源 需积分: 15 28 浏览量
更新于2024-09-14
1
收藏 821B TXT 举报
本文主要介绍了如何在Ubuntu系统中,通过sudo su命令切换到超级用户root,并且详述了在Ubuntu环境下编译开源工程nbis_v4_2_0的过程,特别是针对Android手机平台进行交叉编译的步骤。该工程涉及到wsq压缩编码技术,编译时需要使用NDK(Native Development Kit)提供的交叉编译工具链。
在编译nbis_v4_2_0之前,首先需要设置环境变量。关键在于正确配置CC环境变量,使其指向NDK中对应的arm-linux-androideabi-gcc编译器,并指定sysroot路径,以便编译器知道如何处理针对Android架构的代码。环境变量设置如下:
```bash
export SYSROOT=$NDK/platforms/android-14/arch-arm
export CC="$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot=$SYSROOT"
export PATH=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin:$PATH
```
其中,NDK代表Android的原生开发工具包,用于构建C和C++库,这里的版本是r9。设置完环境变量后,可以开始对Makefile进行适当的修改,以适应交叉编译的需求。
在Makefile中,可能需要调整特定于目标平台的编译标志(如ARCH_FLAG),以及处理endianness的问题。如果项目中包含了其他依赖项,比如OpenJPEG库,根据需求可能需要禁用这些依赖。在示例中,通过运行一个名为jsacreat.sh的脚本来执行编译流程,这个脚本依次执行setup.sh、make config、make it和make install,其中`LIBNBIS=no`表示不编译NBIS库。
整个编译流程大致如下:
1. 运行setup.sh,可能用于初始化或配置项目。
2. 使用make config生成配置文件,根据配置选项调整编译参数。
3. 执行make it开始编译过程。
4. 最后,执行make install将编译好的库安装到指定位置。
需要注意的是,编译时选择的Android API级别是14,这决定了生成的库兼容的Android版本。如果需要支持更高版本的Android,需要将SYSROOT中的android-14替换为相应的API级别。
总结来说,wsq压缩编码是一种图像压缩技术,在nbis_v4_2_0开源工程中被应用。在Ubuntu系统上,开发者可以通过设置正确的环境变量和修改Makefile来实现对Android设备的交叉编译,使得该压缩编码技术能够在Android平台上运行。这个过程涉及到对NDK工具链的理解和熟练运用,以及对编译过程的细心配置。
2018-05-26 上传
2011-12-06 上传
2022-07-14 上传
114 浏览量
2021-09-30 上传
2012-11-14 上传
jsa158
- 粉丝: 24
- 资源: 12
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍