一 简介
pyvips是一个Python绑定,用于访问libvips库,它是一个用于处理大型图像的快速和低内存库。pyvips主要用于执行高效的图像处理操作,尤其是对大型图像或需要大规模批量处理的图像。
libvips是一个开源图像处理库,它专注于处理大型图像,同时最小化内存消耗。它支持多种图像格式,包括JPEG、PNG、TIFF等,以及特定于libvips的高效图像格式。libvips还提供了各种图像处理功能,如调整大小、剪裁、旋转、缩放、色彩转换等,以及更高级的功能,如图像锐化、合并、拼接和特效处理。
二 安装
我在Ubuntu 20.04 上一条命令就成功安装pyvips。
然后在Rocky Linux 9 上却困难重重。
为了 “import pyvips”付出几个小时的心血。。。
1 、系统换源。pip在国内一般使用清华源、阿里源等
2、安装 pyvips
1)pyvips 是调用的libvips,先使用命令验证是否安装了libvips库
# https://www.libvips.org/install.html
$ vips --version
$ sudo ldconfig #加载
2)然而很遗憾,系统是minimal模式安装的,所以接下来就是各大补丁的安装。
# 安装GCC编译器
$ sudo apt-get install build-essential #ubuntu
$ sudo dnf groupinstall 'Development Tools' # Centos
# 安装各种库
$ sudo dnf install cairo-devel cairo-gobject-devel libffi-devel
$ pip install ninja
# 安装 meson
$ sudo pip3 install meson
# 安装glib2-devel
# 下载最新版本 https://download.gnome.org/sources/glib/2.78/
$ sudo dnf install glib2-devel
$ tar -xf glib-2.78.1.tar.xz
# cd glib-2.78.1/
$ meson build
$ cd build
$ ninja
$ ninja install
$ pkg-config --modversion glib-2.0
output: 2.78.1
$ export LD_LIBRARY_PATH="/usr/local/lib64:$LD_LIBRARY_PATH"
# 安装gobject-introspection
# https://download.gnome.org/sources/gobject-introspection/
$ tar -xf gobject-introspection-1.78.0.tar.xz
$ cd gobject-introspection-1.78.0
$ meson setup build
$ cd build
$ ninja
$ ninja install
# 1.78 安装报错太痛苦,所以我选择安装1.60.
# 然后1.60又需要python2,我用python3一直无法正常make...
$ tar -xf gobject-introspection-1.60.0.tar.xz
$ cd gobject-introspection-1.60.0
$ ./configure --with-python=/usr/bin/python
等有时间再来填bug。
先换回ubuntu,一条命令梭哈。