libpng版本:lpng1233.zip
说明:有了前面zlib的经验,这里编译的时候就尽量简略描述了。
注意:libpng库依赖与zlib库,所以需要连接zlib或者和zlib一起编译,但是由于android的NDK本身是自带了zlib的,所以可以直接使用系统的zlib库来链接。
下面是Android.mk的内容:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c pngread.c pngrio.c pngrtran.c pngrutil.c pngset.c pngtrans.c pngvcrd.c pngwio.c pngwrite.c pngwtran.c pngwutil.c
LOCAL_LDLIBS := -lz
LOCAL_MODULE:= libmypng
include $(BUILD_SHARED_LIBRARY)
下面是目录结构以及编译过程:
$tree
.
├── lpng1233.zip
└── prj_libpng
└── jni
├── Android.mk
├── png.c
├── pngconf.h
├── pngerror.c
├── pnggccrd.c
├── pngget.c
├── png.h
├── pngmem.c
├── pngpread.c
├── pngread.c
├── pngrio.c
├── pngrtran.c
├── pngrutil.c
├── pngset.c
├── pngtest.c
├── pngtrans.c
├── pngvcrd.c
├── pngwio.c
├── pngwrite.c
├── pngwtran.c
└── pngwutil.c
2 directories, 22 files
$cd prj_libpng/
$NDK/ndk-build
Compile thumb : mypng <= png.c
Compile thu