使用NDK移植/编译开源库(4)libjpeg的编译

说明:libjpeg下载http://www.ijg.org/,jpegsrc.v8c.tar.gz。(下面是用的是Linux环境NDKr7版本)

(1)使用NDK的GCC编译

1. 解压jpeg包

2. 建立两个文件夹,用于存储编译后的头文件和库文件等(下面的configure用到)。

3. 在终端设置NDK的GCC路径如下:

export SYSROOT=$NDK/platforms/android-14/arch-arm  
export CC="$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot=$SYSROOT"
4. configure

./configure --prefix=/home/sgeng2/Desktop/ndk_lab/libjpeg/prefix/ --exec-prefix=/home/sgeng2/Desktop/ndk_lab/libjpeg/exec_prefix/ --host=arm
注意:要指定--host,否则configure会有错误。

5. make和make install

make
make install
完成后,在configure中指定的prefix和exec-prefix的文件夹中可以找到编译后得到的头文件和库文件。


总结:jpeg的编译过程很顺利,configure的时候没遇到什么错误,make的时候也不需要修改代码,比较容易的了。

(2)测试

为了测试如何使用编译后的jpeg,写了一个简单的测试代码。建立一个test_prj的文件夹,在其下新建一个jni文件夹,将上面生成的prefix下的include文件夹中的头文件和exec-prefix下的libs文件夹中的libjpeg.a复制到jni文件夹中,在jni中新建Android.mk和test.c文件,最终目录树如下:

NDK#tree
.
└── jni
    ├── Android.mk
    ├── jconfig.h
    ├── jerror
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 26
    评论
NDK是Android Native Development Kit的缩写,它是一套专门为Android平台提供的用于开发底层C/C++代码的工具集。使用NDK可以实现直接在Android上编译C/C++的动态。而x265是一种现代化的视频编码技术,它可以在保证视频质量的基础上压缩视频大小。 使用NDK直接编译x265的动态需要以下步骤: 1. 下载并安装NDK,并将其添加到环境变量中。 2. 下载x265源码,并解压到本地路径。 3. 打开终端窗口,进入x265源码路径,执行以下命令: ``` $ export NDK_ROOT=/path/to/ndk $ export PATH=$NDK_ROOT:$PATH $ export SYSROOT=$NDK_ROOT/platforms/android-xx/arch-arm64/ $ export CC=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-gcc $ export CXX=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-g++ $ export LD=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ld $ export AR=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ar $ export AS=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-as $ export RANLIB=$NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-ranlib ``` 其中,将`/path/to/ndk`替换成NDK的安装路径,将`android-xx`替换成对应的Android API版本。 4. 执行以下命令进行编译: ``` $ ./configure --disable-asm --prefix=/path/to/output --host=aarch64-linux-android $ make -j4 $ make install ``` 其中,将`/path/to/output`替换成自己想要输出的路径。 5. 编译完成后,可以将输出的动态文件拷贝到Android项目中,并在项目中调用该文件。 通过以上步骤,就可以在Android平台上使用NDK直接编译x265的动态了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值