libpng的使用 | 在Linux系统下编译、安装与使用
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
目录
libpng是官方的 PNG 参考库。它支持几乎所有 PNG 功能,具有可扩展性,并且已经过 23 年多的广泛测试。
libpng 可作为 ANSI C (C89) 源代码使用,并且需要zlib 1.0.4 或更高版本(出于性能和安全原因,建议使用1.2.5或更高版本)
1.系统(ubuntu16.04 64位)
Linux fly-vm 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
2.下载
libpng的主页-----》libpng-1.6.37.tar.gz
zlib主页------------》zlib-1.2.11.tar.gz
(2条消息) libpng使用_化茧成蝶007的博客-CSDN博客
3.编译、安装
#### 编译安装libpng
[fly@fly-vm LIBPNG]$ wget https://download.sourceforge.net/libpng/libpng-1.6.37.tar.gz
[fly@fly-vm LIBPNG]$ wget http://www.zlib.net/zlib-1.2.11.tar.gz
[fly@fly-vm LIBPNG]$ tar -zxvf libpng-1.6.37.tar.gz
[fly@fly-vm LIBPNG]$ cd libpng-1.6.37/
[fly@fly-vm libpng-1.6.37]$ ./configure --prefix=$PWD/_install
[fly@fly-vm libpng-1.6.37]$ make && make install
### 查看编译安装结果
[fly@fly-vm libpng-1.6.37]$ cd _install/
[fly@fly-vm _install]$ tree
.
├── bin
│ ├── libpng16-config
│ ├── libpng-config -> libpng16-config
│ ├── pngfix
│ └── png-fix-itxt
├── include
│ ├── libpng16
│ │ ├── pngconf.h
│ │ ├── png.h
│ │ └── pnglibconf.h
│ ├── pngconf.h -> libpng16/pngconf.h
│ ├── png.h -> libpng16/png.h
│ └── pnglibconf.h -> libpng16/pnglibconf.h
├── lib
│ ├── libpng16.a
│ ├── libpng16.la
│ ├── libpng16.so -> libpng16.so.16.37.0
│ ├── libpng16.so.16 -> libpng16.so.16.37.0
│ ├── libpng16.so.16.37.0
│ ├── libpng.a -> libpng16.a
│ ├── libpng.la -> libpng16.la
│ ├── libpng.so -> libpng16.so
│ └── pkgconfig
│ ├── libpng16.pc
│ └── libpng.pc -> libpng16.pc
└── share
└── man
├── man3
│ ├── libpng.3
│ └── libpngpf.3
└── man5
└── png.5
9 directories, 23 files
为LIBPNG的可执行二进制文件、头文件及库文件在/usr目录下创建软链接
.PHONY: all link unlink test makedir
SRCDIR = $(PWD)
DSTDIR = /usr
LNK = sudo ln -s
RMK = sudo rm -rf
BIN_FILE_0 = bin/libpng16-config
BIN_FILE_1 = bin/pngfix
BIN_FILE_2 = bin/png-fix-itxt
INC_FILE_0 = include/libpng16/pngconf.h
INC_FILE_1 = include/libpng16/png.h
INC_FILE_2 = include/libpng16/pnglibconf.h
LIB_FILE_0 = lib/libpng16.a
LIB_FILE_1 = lib/libpng16.la
LIB_FILE_2 = lib/libpng16.so.16.37.0
all:link
makedir:
sudo mkdir $(DSTDIR)/include/libpng16/
link:makedir
$(LNK) $(SRCDIR)/$(BIN_FILE_0) $(DSTDIR)/$(BIN_FILE_0)
$(LNK) $(SRCDIR)/$(BIN_FILE_1) $(DSTDIR)/$(BIN_FILE_1)
$(LNK) $(SRCDIR)/$(BIN_FILE_2) $(DSTDIR)/$(BIN_FILE_2)
$(LNK) $(SRCDIR)/$(INC_FILE_0) $(DSTDIR)/$(INC_FILE_0)
$(LNK) $(SRCDIR)/$(INC_FILE_1) $(DSTDIR)/$(INC_FILE_1)
$(LNK) $(SRCDIR)/$(INC_FILE_2) $(DSTDIR)/$(INC_FILE_2)
$(LNK) $(SRCDIR)/$(LIB_FILE_0) $(DSTDIR)/$(LIB_FILE_0)
$(LNK) $(SRCDIR)/$(LIB_FILE_1) $(DSTDIR)/$(LIB_FILE_1)
$(LNK) $(SRCDIR)/$(LIB_FILE_2) $(DSTDIR)/$(LIB_FILE_2)
$(LNK) $(SRCDIR)/$(LIB_FILE_0) $(DSTDIR)/lib/libpng.a
$(LNK) $(SRCDIR)/$(LIB_FILE_1) $(DSTDIR)/lib/libpng.la
$(LNK) $(SRCDIR)/$(LIB_FILE_2) $(DSTDIR)/lib/libpng.so
$(LNK) $(SRCDIR)/$(LIB_FILE_2) $(DSTDIR)/lib/libpng16.so
$(LNK) $(SRCDIR)/$(LIB_FILE_2) $(DSTDIR)/lib/libpng16.so.16
unlink:
$(RMK) $(DSTDIR)/$(BIN_FILE_0) && \
$(RMK) $(DSTDIR)/$(BIN_FILE_1) && \
$(RMK) $(DSTDIR)/$(BIN_FILE_2) && \
$(RMK) $(DSTDIR)/$(INC_FILE_0) && \
$(RMK) $(DSTDIR)/$(INC_FILE_1) && \
$(RMK) $(DSTDIR)/$(INC_FILE_2) && \
$(RMK) $(DSTDIR)/$(LIB_FILE_0) && \
$(RMK) $(DSTDIR)/$(LIB_FILE_1) && \
$(RMK) $(DSTDIR)/$(LIB_FILE_2) && \
$(RMK) $(DSTDIR)/include/libpng16 && \
$(RMK) $(DSTDIR)/lib/libpng.* $(DSTDIR)/lib/libpng16.*
test:
@echo $(SRCDIR)
@echo $(DSTDIR)
### 编译、安装zlib
[fly@fly-vm LIBPNG]$ tar -zxvf zlib-1.2.11.tar.gz
[fly@fly-vm LIBPNG]$ cd zlib-1.2.11/
[fly@fly-vm zlib-1.2.11]$ ./configure --prefix=$PWD/_install
[fly@fly-vm zlib-1.2.11]$ make && make install
### 查看zlib编译结果
[fly@fly-vm zlib-1.2.11]$ cd _install/
[fly@fly-vm _install]$ tree
.
├── include
│ ├── zconf.h
│ └── zlib.h
├── lib
│ ├── libz.a
│ ├── libz.so -> libz.so.1.2.11
│ ├── libz.so.1 -> libz.so.1.2.11
│ ├── libz.so.1.2.11
│ └── pkgconfig
│ └── zlib.pc
└── share
└── man
└── man3
└── zlib.3
6 directories, 8 files
4.测试
5.参考
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献2条内容
所有评论(0)