ubuntu 下编译android libjpeg-turbo-1.5.2

1.使用windows NDK方式可以编译通过,但是无法使用,调用的时候报错,无法引用函数

2.在ubuntu上编译通过,并且可以使用

3.编译方法

1).下载linux版本的NDK

https://dl.google.com/android/repository/android-ndk-r14b-linux-x86_64.zip

放在Ubuntu下解压 ,unzipandroid-ndk-r14b-linux-x86_64.zip

2).下载libjpeg-turbo源码

https://libjpeg-turbo.org/ 官网下载,我的版本是1.5.2

tar -xvflibjpeg-turbo-1.5.2.tar.gz

3).配置

virunconfig.sh

写入:

build_directory=/home/wy/libjpeg/libjpeg-turbo-1.5.2
source_directory=/home/wy/libjpeg/libjpeg-turbo-1.5.2

NDK_PATH=/home/wy/NDK/android-ndk-r14b
BUILD_PLATFORM=linux-x86_64
TOOLCHAIN_VERSION=4.9
ANDROID_VERSION=19

# It should not be necessary to modify the rest
HOST=arm-linux-androideabi
SYSROOT=${NDK_PATH}/platforms/android-${ANDROID_VERSION}/arch-arm
ANDROID_CFLAGS="-march=armv7-a -mfloat-abi=softfp -fprefetch-loop-arrays --sysroot=${SYSROOT}"

TOOLCHAIN=${NDK_PATH}/toolchains/${HOST}-${TOOLCHAIN_VERSION}/prebuilt/${BUILD_PLATFORM}
export CPP=${TOOLCHAIN}/bin/${HOST}-cpp
export AR=${TOOLCHAIN}/bin/${HOST}-ar
export NM=${TOOLCHAIN}/bin/${HOST}-nm
export CC=${TOOLCHAIN}/bin/${HOST}-gcc
export LD=${TOOLCHAIN}/bin/${HOST}-ld
export RANLIB=${TOOLCHAIN}/bin/${HOST}-ranlib
export OBJDUMP=${TOOLCHAIN}/bin/${HOST}-objdump
export STRIP=${TOOLCHAIN}/bin/${HOST}-strip
#cd {build_directory}
#sh {source_directory}/configure --host=${HOST} 
sh ./configure --host=${HOST} \
CFLAGS="${ANDROID_CFLAGS} -O3 -fPIE" \
CPPFLAGS="${ANDROID_CFLAGS}" \
LDFLAGS="${ANDROID_CFLAGS} -pie" --with-simd ${1+"$@"} \
--prefix=/home/wy/libjpeg/libjpeg-turbo-1.5.2/android-bin
    #make
保存文件
--prefix=/home/wy/libjpeg/libjpeg-turbo-1.5.2/android-bin 这是输入的编译文件,自己定
-march=armv7-a  编译类型
ANDROID_VERSION=19 android库版本

执行 chmod +x  runconfig.sh
 sh runconfig.sh



执行 make

执行 make install

libjpeg-turbo-1.5.2/android-bin 下面就有 os库,了,两个都引用

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...