10. Graphics and Font Libraries
根据您的系统的用途,您可能需要也可能不需要图形和字体库。大多数桌面机器都希望它们与图形应用程序一起使用。另一方面,大多数服务器不需要它们。
10.1 AAlib-1.4rc5
简介AAlib
AAlib是一个将任何图形渲染成ASCII艺术的库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/aa-project/aalib-1.4rc5.tar.gz
-
下载 MD5 校验和: 9801095c42bba12edebd1902bcf0a990
-
下载大小: 388 KB
-
预计所需磁盘空间: 6.5 MB
-
预计构建时间: 0.1 SBU
AAlib 依赖
可选
Xorg Libraries, Xorg Legacy Fonts (运行时), slang-2.3.3, 和 GPM-1.20.7
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/aalib
安装AAlib
修复包含的m4文件的一个小问题:
sed -i -e '/AM_PATH_AALIB,/s/AM_PATH_AALIB/[&]/' aalib.m4
运行以下命令安装AAlib:
./configure --prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--with-ncurses=/usr \
--disable-static &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
内容
安装程序: aafire, aainfo, aalib-config, aasavefont, 和 aatest
安装库: libaa.so
安装目录: None
简短描述
aafire 是一个演示的AAlib的demo,渲染animated fire在ASCII艺术。
aainfo 提供与AAlib相关的当前设置的信息。
aalib-config 提供AAlib的配置信息。
aasavefont 将字体保存到文件中。
aatest 在一个小测试中显示了AAlib的能力。
libaa.so 是将任何图形输入以可移植格式呈现为ASCII艺术的例程集合。它可以通过许多程序使用,并且有一个非常好的API文档,因此您可以轻松地将它放入自己的程序中。
10.2 babl-0.1.98
简介Babl
Babl包是一个动态的、任意到任意的像素格式翻译库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://download.gimp.org/pub/babl/0.1/babl-0.1.98.tar.xz
-
下载 MD5 校验和: 0fd5f826e2ef14de04d978c203a3fe28
-
下载大小: 308 KB
-
预计所需磁盘空间: 12 MB (有测试)
-
预计构建时间: 0.1 SBU (使用并行数=4; 有测试)
Babl 依赖
推荐
gobject-introspection-1.74.0 和 librsvg-2.54.5
可选
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/babl
安装Babl
运行以下命令安装Babl:
mkdir bld &&
cd bld &&
meson --prefix=/usr --buildtype=release .. &&
ninja
要测试结果,执行: ninja test.
现在,作为root用户:
ninja install &&
install -v -m755 -d /usr/share/gtk-doc/html/babl/graphics &&
install -v -m644 docs/*.{css,html} /usr/share/gtk-doc/html/babl &&
install -v -m644 docs/graphics/*.{html,svg} /usr/share/gtk-doc/html/babl/graphics
命令解释
install -v -m755 -d /usr/share/gtk-doc/html/babl/graphics: 这个和后续的命令将库html文档安装在/usr/share/gtk-doc/html下,其他gtk包将面向程序员的文档放在这里。
内容
安装程序: None
安装库: libbabl-0.1.so 和 /usr/lib/babl-0.1 中的库
安装目录: /usr/{include,lib}/babl-0.1 和 /usr/share/gtk-doc/html/babl
简短描述
libbabl-0.1.so 包含访问BablFishes以在格式之间进行转换的函数。
10.3 Exiv2-0.27.6
简介Exiv2
Exiv2是一个C++库和命令行实用程序,用于管理图像和视频元数据。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/Exiv2/exiv2/releases/download/v0.27.6/exiv2-0.27.6-Source.tar.gz
-
下载 MD5 校验和: 837a469b0957df8b657151ffb9449771
-
下载大小: 31 MB
-
预计所需磁盘空间: 78 MB
-
预计构建时间: 0.2 SBU (使用并行数=4)
Exiv2 依赖
必要
推荐
可选
可选文档
Doxygen-1.9.6, Graphviz-7.1.0, 和 libxslt-1.1.37
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/exiv2
安装Exiv2
运行以下命令安装Exiv2:
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DEXIV2_ENABLE_VIDEO=yes \
-DEXIV2_ENABLE_WEBREADY=yes \
-DEXIV2_ENABLE_CURL=yes \
-DEXIV2_BUILD_SAMPLES=no \
-G "Unix Makefiles" .. &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
命令解释
-DEXIV2_ENABLE_VIDEO=yes: 该开关用于视频元数据管理。
-DEXIV2_ENABLE_WEBREADY=yes: 此开关可用于管理web图像元数据。
-DEXIV2_BUILD_SAMPLES=no: 此开关对于抑制构建和安装示例程序是必要的。如果构建了示例程序,将在/usr/bin中安装34个附加程序。
-DEXIV2_ENABLE_CURL=yes: 此开关是启用network/http功能所必需的。
内容
安装程序: exiv2
安装库: libexiv2.so 和 libexiv2-xmp.a
安装目录: /usr/include/exiv2
简短描述
exiv2 是一个用于转储Exif数据的实用程序。
10.4 FreeType-2.13.0
简介FreeType2
FreeType2包包含一个库,允许应用程序正确渲染TrueType字体。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/freetype/freetype-2.13.0.tar.xz
-
下载 MD5 校验和: fe73327ebbf0b629f3ad24be656d59de
-
下载大小: 2.4 MB
-
预计所需磁盘空间: 48 MB (附带其他文档)
-
预计构建时间: 0.2 SBU (附带其他文档)
额外下载
额外文档
-
下载 (HTTP): https://downloads.sourceforge.net/freetype/freetype-doc-2.13.0.tar.xz
-
下载 MD5 校验和: 139f7e7690469da503d40ba4ce59a9fa
-
下载大小: 2.0 MB
FreeType2 依赖
推荐
HarfBuzz-7.0.0 (第一,无它安装,安装好后重新安装 FreeType-2.13.0), libpng-1.6.39, 和 Which-2.21
可选
可选 (用于文档)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/freetype2
安装FreeType2
如果您下载了额外的文档,请使用以下命令将其解压缩到源代码树中:
tar -xf ../freetype-doc-2.13.0.tar.xz --strip-components=2 -C docs
运行以下命令安装FreeType2:
sed -ri "s:.*(AUX_MODULES.*valid):\1:" modules.cfg &&
sed -r "s:.*(#.*SUBPIXEL_RENDERING) .*:\1:" \
-i include/freetype/config/ftoption.h &&
./configure --prefix=/usr --enable-freetype-config --disable-static &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
如果你下载了可选的文档,以root用户安装它:
install -v -m755 -d /usr/share/doc/freetype-2.13.0 &&
cp -v -R docs/* /usr/share/doc/freetype-2.13.0 &&
rm -v /usr/share/doc/freetype-2.13.0/freetype-config.1
命令解释
sed -ri …: 第一个命令启用GX/AAT和OpenType表验证,第二个命令启用Subpixel渲染。注意,Subpixel渲染可能有专利问题。在启用此选项之前,请务必阅读https://freetype.org/patents.html的'Other patent issues'部分。
--enable-freetype-config: 此开关确保安装了freetype-config的手册页。
--without-harfbuzz: 如果harfbuzz是在freetype之前安装的,没有freetype支持,请使用此开关以避免构建失败。
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: freetype-config
安装库: libfreetype.so
安装目录: /usr/include/freetype2 和 /usr/share/doc/freetype-2.13.0
简短描述
freetype-config 是用来获取FreeType编译和链接信息的。
libfreetype.so 包含用于呈现各种字体类型的函数,例如TrueType和Type1。
10.5 Fontconfig-2.14.2
简介Fontconfig
Fontconfig包包含一个库和支持程序,用于配置和自定义字体访问。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.14.2.tar.xz
-
下载 MD5 校验和: 95261910ea727b5dd116b06fbfd84b1f
-
下载大小: 1.4 MB
-
预计所需磁盘空间: 17 MB (有测试)
-
预计构建时间: 0.3 SBU (有测试)
Fontconfig 依赖
必要
可选
cURL-7.88.1 and UnZip-6.0 (它们都被一些测试用于下载和提取测试文件), JSON-C-0.16, DocBook-utils-0.6.14 和 libxml2-2.10.3, texlive-20220321 (或 install-tl-unx)
注意
如果您已经安装了DocBook Utils,并且从下面的configure命令中删除了--disable-docs参数,则必须安装SGMLSpm-1.1 和 texlive-20220321,否则Fontconfig构建将失败。
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/Fontconfig
安装Fontconfig
运行以下命令安装Fontconfig:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-docs \
--docdir=/usr/share/doc/fontconfig-2.14.2 &&
make
要测试结果,执行: make check. 如果内核不支持用户名称空间,一个测试就会失败。一些测试将通过互联网下载一些字体文件。
现在,作为root用户:
make install
如果你没有从configure命令中删除--disable-docs参数,你可以使用以下命令作为root用户安装预生成的文档:
install -v -dm755 \
/usr/share/{man/man{1,3,5},doc/fontconfig-2.14.2/fontconfig-devel} &&
install -v -m644 fc-*/*.1 /usr/share/man/man1 &&
install -v -m644 doc/*.3 /usr/share/man/man3 &&
install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 &&
install -v -m644 doc/fontconfig-devel/* \
/usr/share/doc/fontconfig-2.14.2/fontconfig-devel &&
install -v -m644 doc/*.{pdf,sgml,txt,html} \
/usr/share/doc/fontconfig-2.14.2
命令解释
--disable-docs: 这种切换避免了构建文档(发布tarball包含预先生成的文档)。
配置 Fontconfig
配置文件
/etc/fonts/*, /etc/fonts/conf.d/* 和 /usr/share/fontconfig/conf.avail/*
配置信息
Fontconfig的主要配置文件是/etc/fonts/fonts.conf。通常您不希望编辑此文件。它还将读取/etc/fonts/local.conf和/etc/fonts/conf.d中的任何文件。要在配置中添加一个新的字体目录,用你的本地信息创建(或更新)/etc/fonts/local.conf文件,或者在/etc/fonts/conf.d中添加一个新文件。字体在Fontconfig中的默认位置是:
-
/usr/share/fonts
-
~/.local/share/fonts
-
~/.fonts (现在已经弃用了,但目前它仍然有效)
Fontconfig还在/usr/share/fontconfig/conf.avail目录下附带了许多示例配置文件。将特定文件符号链接到/etc/fonts/conf.d将启用它们。默认设置通常对大多数用户来说已经足够好了。请参阅/etc/fonts/conf.d/README查看配置文件的描述。
关于配置Fontconfig的更多信息可以在用户手册中找到 file:///usr/share/doc/fontconfig-2.14.2/fontconfig-user.html.
内容
安装程序: fc-cache, fc-cat, fc-conflist, fc-list, fc-match, fc-pattern, fc-query, fc-scan, 和 fc-validate
安装库: libfontconfig.so
安装目录: /etc/fonts, /usr/include/fontconfig, /usr/share/doc/fontconfig-2.14.2, /usr/share/fontconfig, /usr/share/xml/fontconfig, 和 /var/cache/fontconfig
简短描述
fc-cache 用于创建字体信息缓存。
fc-cat 用于读取字体信息缓存。
fc-conflist 显示系统上的规则集文件信息。
fc-list 用于创建字体列表。
fc-match 用于匹配可用字体,或查找与给定模式匹配的字体。
fc-pattern 用于解析模式(默认为空模式)并显示解析结果。
fc-query 用于查询字体文件并打印生成的图案。
fc-scan 用于扫描字体文件和目录,并打印生成的图案。
fc-validate 用于验证字体文件。
libfontconfig.so 包含Fontconfig程序和其他程序使用的函数,用于配置或自定义字体访问。
10.6 FriBidi-1.0.12
简介FriBidi
FriBidi包是Unicode Bidirectional Algorithm (BIDI)的实现。这对于在其他包中支持阿拉伯语和希伯来语字母很有用。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/fribidi/fribidi/releases/download/v1.0.12/fribidi-1.0.12.tar.xz
-
下载 MD5 校验和: 21185b398635a7fc0d3ff0a7578c4791
-
下载大小: 1.1 MB
-
预计所需磁盘空间: 21 MB (有测试)
-
预计构建时间: 小于 0.1 SBU (有测试)
FriBidi 依赖
可选
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/fribidi
安装FriBidi
运行以下命令安装FriBidi:
mkdir build &&
cd build &&
meson --prefix=/usr --buildtype=release .. &&
ninja
要测试结果,执行: ninja test.
现在,作为root用户:
ninja install
命令解释
--buildtype=release: 指定适合于包的稳定版本的构建类型,因为默认值可能会产生未优化的二进制文件。
内容
安装程序: fribidi
安装库: libfribidi.so
安装目录: /usr/include/fribidi
简短描述
fribidi 是libfribidi库的命令行接口,可用于将逻辑字符串转换为可视输出。
libfribidi.so 包含用于实现 Unicode Bidirectional Algorithm的函数。
10.7 gegl-0.4.40
简介gegl
这个包提供了通用图形库,这是一种基于图形的图像处理格式。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://download.gimp.org/pub/gegl/0.4/gegl-0.4.40.tar.xz
-
下载 MD5 校验和: fe182967ce4b678d8b45500c416555c5
-
下载大小: 5.5 MB
-
预计所需磁盘空间: 115 MB (为测试添加7 MB)
-
预计构建时间: 0.9 SBU (使用并行数=4;添加0.2用于测试)
gegl 依赖
必要
babl-0.1.98, JSON-GLib-1.6.6, libjpeg-turbo-2.1.5.1, 和 libpng-1.6.39
推荐
gobject-introspection-1.74.0, Graphviz-7.1.0, Pygments-2.14.0, 和 PyGObject-3.42.2
可选
asciidoc-10.2.0, Cairo-1.17.6, Exiv2-0.27.6, FFmpeg-5.1.2, gdk-pixbuf-2.42.10, gexiv2-0.14.0, GTK-Doc-1.33.2, JasPer-4.0.0, Little CMS-2.14, libraw-0.21.1, librsvg-2.54.5, libtiff-4.5.0, libwebp-1.3.0, Pango-1.50.12, Poppler-23.02.0, Ruby-3.2.1, SDL2-2.26.3, v4l-utils-1.22.1, Vala-0.56.4, libspiro-20220722, lensfun, libumfpack, LuaJIT, OpenCL (用于测试), MRG, 和 OpenEXR
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/gegl
安装gegl
如果在以前版本的gegl上安装,则需要删除一个模块。作为root用户,运行:
rm -f /usr/lib/gegl-0.4/vector-fill.so
如果安装了LibRaw-0.21.0或更高版本,则由于ABI的更改而导致构建失败。通过执行:
sed -e '/shot_select/s/params/raw&/' \
-i operations/external/raw-load.c
运行以下命令安装gegl:
mkdir build &&
cd build &&
meson --prefix=/usr --buildtype=release .. &&
ninja
要运行测试,请执行: ninja test. 这应该表明没有失败,但将跳过许多测试,具体取决于系统上安装的可选依赖项。
现在,作为root用户:
ninja install
命令解释
-Ddocs=true: 构建和安装文档 (需要 GTK-Doc-1.33.2,).
内容
安装程序: gegl 和 gegl-imgcmp
安装库: libgegl-0.4.so, libgegl-npd-0.4.so, libgegl-sc-0.4.so, 和 /usr/lib/gegl-0.4 中的模块
安装目录: /usr/lib/gegl-0.4 和 /usr/include/gegl-0.4
简短描述
gegl 是一个用于处理XML数据模型的命令行工具。
gegl-imgcmp 是一个简单的图像差异检测工具,用于回归测试。
libgegl-0.4.so 提供基础设施,在大于RAM的缓冲区上进行基于需求的缓存无损图像编辑。
libgegl-npd-0.4.so 为GEGL N-point图像变形库。
libgegl-sc-0.4.so 是GEGL无缝克隆库。
10.8 giflib-5.2.1
简介giflib
giflib包包含用于读取和写入GIF的库以及用于转换和处理GIF文件的程序。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://sourceforge.net/projects/giflib/files/giflib-5.2.1.tar.gz
-
下载 MD5 校验和: 6f03aee4ebe54ac2cc1ab3e4b0a049e5
-
下载大小: 436 KB
-
预计所需磁盘空间: 3.2 MB (有文档)
-
预计构建时间: 小于 0.1 SBU (有文档)
giflib 依赖
必要
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/giflib
安装giflib
运行以下命令安装giflib:
make
这个包没有附带测试套件。
现在,作为root用户:
make PREFIX=/usr install &&
rm -fv /usr/lib/libgif.a &&
find doc \( -name Makefile\* -o -name \*.1 \
-o -name \*.xml \) -exec rm -v {} \; &&
install -v -dm755 /usr/share/doc/giflib-5.2.1 &&
cp -v -R doc/* /usr/share/doc/giflib-5.2.1
命令解释
rm -fv /usr/lib/libgif.a: 这个命令删除一个没有被任何BLFS包使用的静态库。
find doc … -exec rm -v {} \;: 该命令从文档目录中删除Makefiles、man和xml文件,否则这些文件将由后面的命令安装。
内容
安装程序: gif2rgb, gifbuild, gifclrmp, giffix, giftext, 和 giftool
安装库: libgif.so
安装目录: /usr/share/doc/giflib-5.2.1
简短描述
gif2rgb 将保存为GIF的图像转换为24位RGB图像。
gifbuild 将GIF数据转储为文本格式,或将其转储为GIF。
gifclrmp 修改GIF图像的颜色映射。
giffix 笨拙地尝试修复截断的GIF图像。
giftext 打印(仅文本)关于GIF文件的一般信息。
giftool 是一个GIF转换工具。
libgif.so 包含giflib程序和任何其他需要库功能来读取,写入和操作GIF图像的程序所需的API函数。
10.9 GLM-0.9.9.8
简介GLM
OpenGL Mathematics (GLM)是基于OpenGL Shading Language (GLSL)规范的图形软件的仅头文件的C++数学库。扩展系统提供扩展功能,如矩阵变换和四元数。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/g-truc/glm/archive/0.9.9.8/glm-0.9.9.8.tar.gz
-
下载 MD5 校验和: 0e83d4a33c7d4044a2c35c8d6aba4671
-
下载大小: 4.2 MB
-
预计所需磁盘空间: 23 MB
-
预计构建时间: 小于 0.1 SBU
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/GLM
安装GLM
注意
这个包是不寻常的,因为它在头文件中包含了它的功能。我们只是把它们复制到合适的位置。
作为root用户:
cp -r glm /usr/include/ &&
cp -r doc /usr/share/doc/glm-0.9.9.8
内容
安装程序: None
安装库: None
安装目录: /usr/include/glm
10.10 Graphite2-1.3.14
简介Graphite2
Graphite2是石墨字体的渲染引擎。这些是TrueType字体,带有包含智能呈现信息的附加表,最初是为了支持复杂的非罗马书写系统而开发的。它们可能包含连接、字形替换、字距、对齐等规则,这使得它们甚至可以用于用罗马书写系统(如英语)编写的文本。注意,firefox在默认情况下提供了一个石墨引擎的内部副本,并且不能使用系统版本(尽管它现在可以打补丁来使用它),但是它也应该从石墨字体的可用性中受益。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/silnrsi/graphite/releases/download/1.3.14/graphite2-1.3.14.tgz
-
下载 MD5 校验和: 1bccb985a7da01092bfb53bb5041e836
-
下载大小: 6.3 MB
-
预计所需磁盘空间: 28 MB (有测试)
-
预计构建时间: 0.2 SBU (有测试)
Graphite2 依赖
必要
可选
FreeType-2.13.0, silgraphite构建comparerender测试和基准测试工具,如果存在,HarfBuzz-7.0.0为其添加更多功能(这是一个循环依赖,您需要首先构建graphite2而不使用harfbuzz)。
构建文档:asciidoc-10.2.0, Doxygen-1.9.6, texlive-20220321(或install-tl-unx)和dblatex(用于PDF文档)。
要执行测试套件,您将需要FontTools (Python 3模块),否则,“cmp”测试将失败。
可选 (在运行时)
您至少需要一个合适的graphite font才能使包有用。
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/graphite2
安装Graphite2
如果未安装FontTools (Python 3模块),则某些测试会失败。这些测试可以通过以下方式删除:
sed -i '/cmptest/d' tests/CMakeLists.txt
运行以下命令安装Graphite2:
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr .. &&
make
如果您希望构建文档,请执行:
make docs
要测试结果,执行: make test.
现在,作为root用户:
make install
如果您构建了文档,作为root用户,请安装:
install -v -d -m755 /usr/share/doc/graphite2-1.3.14 &&
cp -v -f doc/{GTF,manual}.html \
/usr/share/doc/graphite2-1.3.14 &&
cp -v -f doc/{GTF,manual}.pdf \
/usr/share/doc/graphite2-1.3.14
命令解释
-DCMAKE_VERBOSE_MAKEFILE=ON: 此开关打开构建详细模式。
内容
安装程序: gr2fonttest, 和可选的 comparerender
安装库: libgraphite2.so
安装目录: /usr/{include,share}/graphite2 和可选的 /usr/share/doc/graphite2-1.3.14
简短描述
comparerender 是一个测试和基准测试工具。
gr2fonttest 是graphite字体的诊断控制台工具。
libgraphite2.so 是graphite字体的渲染引擎。
10.11 HarfBuzz-7.0.0
简介Harfbuzz
HarfBuzz包包含一个OpenType文本整形引擎。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/harfbuzz/harfbuzz/releases/download/7.0.0/harfbuzz-7.0.0.tar.xz
-
下载 MD5 校验和: 5c7a6750760e4d6c098436a43542a7d0
-
下载大小: 18 MB
-
预计所需磁盘空间: 144 MB (有测试)
-
预计构建时间: 0.6 SBU (使用并行数=4; 有测试)
HarfBuzz 依赖
推荐
gobject-introspection-1.74.0 (如果构建GNOME是必需的), GLib-2.74.5 (Pango所需), Graphite2-1.3.14 (building所需 texlive-20220321 或 LibreOffice-7.5.0.3 于系统 harfbuzz), ICU-72.1, 和 FreeType-2.13.0 (在 HarfBuzz-7.0.0 安装后,重新安装 FreeType-2.13.0)
可选
Cairo-1.17.6 (circular:首先构建Cairo及其所有推荐的依赖项,包括harfbuzz,然后在需要Cairo后端时重新构建harfbuzz), git-2.39.2, GTK-Doc-1.33.2, FontTools (Python 3模块,用于测试套件), and ragel
警告
构建包并不严格要求推荐的依赖项。但是,如果不安装它们,在运行时可能得不到预期的结果。如果您没有安装推荐的依赖项,请不要报告此包的错误。
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/harfbuzz
安装HarfBuzz
运行以下命令安装HarfBuzz:
mkdir build &&
cd build &&
meson --prefix=/usr \
--buildtype=release \
-Dgraphite2=enabled &&
ninja
要测试结果,执行: ninja test.
现在,作为root用户:
ninja install
命令解释
--buildtype=release: 指定适合于包的稳定版本的构建类型,因为默认值可能会产生未优化的二进制文件。
-Dgraphite2=enabled: 此开关启用Graphite2支持,这是使用system harfbuzz构建texlive-20220321 或 LibreOffice-7.5.0.3所必需的。
-Ddocs=disabled: 如果安装了GTK-Doc-1.33.2,则会构建并安装文档。这个开关可以防止这种情况。
内容
安装程序: hb-info, hb-ot-shape-closure, hb-shape, hb-subset, 和 hb-view (除非安装了Cairo)
安装库: libharfbuzz.so, libharfbuzz-cairo.so (除非安装了Cairo), libharfbuzz-gobject.so, libharfbuzz-icu.so, 和 libharfbuzz-subset.so
安装目录: /usr/include/harbuzz, /usr/lib/cmake/harfbuzz, 和 /usr/share/gtk-doc/html/harfbuzz (可选)
简短描述
hb-info 用于收集有关系统上安装的字体的信息。
hb-ot-shape-closure 给出字符串中包含的字符集,表示为单个字符和/或单个字符名称。例如:hb-ot-shape-closure /usr/share/fonts/dejavu/DejaVuSans.ttf “Hello World.”。
hb-shape 用于将文本字符串转换为定位的字形。
hb-subset 用于创建字体子集,并使用它们显示文本。
hb-view 使用特定字体作为一组字形显示字符串形状的图形视图。输出格式由文件扩展名自动定义,支持的是ansi/png/svg/pdf/ps/eps。例如: hb-view –output-file=hello.png /usr/share/fonts/dejavu/DejaVuSans.ttf “Hello World.”.
libharfbuzz.so 是HarfBuzz文本shaping库。
libharfbuzz-cairo.so 为Harfbuzz文本shaping库提供了Cairo集成。
libharfbuzz-gobject.so为HarfBuzz文本shaping库提供GObject集成。
libharfbuzz-icu.so 为HarfBuzz文本shaping库提供ICU集成。
libharfbuzz-subset.so 提供对字体文件执行子集操作的API函数。
10.12 JasPer-4.0.0
简介JasPer
JasPer项目是一个开源项目,提供基于免费软件的JPEG-2000编解码器参考实现。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/jasper-software/jasper/archive/version-4.0.0/jasper-4.0.0.tar.gz
-
下载 MD5 校验和: 1578be3c1e329fdaae35d98dd804ed95
-
下载大小: 1.9 MB
-
预计所需磁盘空间: 9.5 MB (有测试)
-
预计构建时间: 0.3 SBU (有测试)
JasPer 依赖
必要
推荐
可选
Freeglut-3.4.0 (jiv需要), Doxygen-1.9.6 (生成HTML文档所需), 和 texlive-20220321 (需要重新生成PDF文档)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/jasper
安装JasPer
注意
压缩包jasper-4.0.0.tar.gz将被解压为jasper-version-4.0.0。
运行以下命令安装JasPer:
mkdir BUILD &&
cd BUILD &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_INSTALL_RPATH=YES \
-DJAS_ENABLE_DOC=NO \
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/jasper-4.0.0 \
.. &&
make
要测试结果,执行: make test.
现在,作为root用户:
make install
命令解释
-DCMAKE_SKIP_INSTALL_RPATH=YES: 此选项删除嵌入式的库搜索路径。
-DJAS_ENABLE_DOC=NO: 如果安装了texlive-20220321,此选项将禁用重建pdf文档。
内容
安装程序: imgcmp, imginfo, jasper, 和 jiv
安装库: libjasper.so
安装目录: /usr/include/jasper 和 /usr/share/doc/jasper-4.0.0
简短描述
imgcmp 比较相同几何形状的两个图像。
imginfo 显示图像的相关信息。
jasper 在不同格式之间转换图像 (BMP, JPS, JPC, JPG, PGX, PNM, MIF, and RAS)。
jiv 显示图像。
libjasper.so 是程序用于读写JPEG2000格式文件的库。
10.13 Little CMS-1.19
简介Little CMS
其他程序使用Little CMS库来提供颜色管理功能。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/lcms/lcms-1.19.tar.gz
-
下载 MD5 校验和: 8af94611baf20d9646c7c2c285859818
-
下载大小: 927 KB
-
预计所需磁盘空间: 27 MB
-
预计构建时间: 0.5 SBU
额外下载
Little CMS 依赖
可选
libtiff-4.5.0, libjpeg-turbo-2.1.5.1, 和 Python-2.7.18 (与 SWIG-4.1.1 也)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/lcms
安装Little CMS
运行以下命令安装Little CMS:
patch -Np1 -i ../lcms-1.19-cve_2013_4276-1.patch &&
./configure --prefix=/usr --disable-static &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install &&
install -v -m755 -d /usr/share/doc/lcms-1.19 &&
install -v -m644 README.1ST doc/* \
/usr/share/doc/lcms-1.19
命令解释
--disable-static: 此开关防止安装库的静态版本。
--with-python: 如果安装了Python和SWIG,则使用此参数。
内容
安装程序: icc2ps, icclink, icctrans, wtpt and optionally, jpegicc, tiffdiff 和 tifficc
安装库: liblcms.so 以及可选的 _lcms.so Python模块
安装目录: /usr/share/doc/lcms-1.19
简短描述
icc2ps 从ICC配置文件生成PostScript CRD或CSA。
icclink 将两个或多个配置文件链接到单个设备链路配置文件中。
icctrans 是一个色彩空间转换计算器。
jpegicc 是用于JPEG文件的ICC配置文件应用程序。
tifficc 是TIFF文件的ICC配置文件应用程序。
tiffdiff 是一个TIFF比较工具。
wtpt 显示媒体白色的轮廓,识别黑体轨迹。
liblcms.so 被LCMS程序以及其他程序用来提供色彩管理设施。
10.14 Little CMS-2.14
简介Little CMS2
Little Color管理系统是一个small-footprint色彩管理引擎,特别注重准确性和性能。它采用国际色彩联盟标准(ICC),这是色彩管理的现代标准。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/mm2/Little-CMS/releases/download/lcms2.14/lcms2-2.14.tar.gz
-
下载 MD5 校验和: 7f7baa3e605c961b9301135105ee9a34
-
下载大小: 7.1 MB
-
预计所需磁盘空间: 20 MB (加上测试)
-
预计构建时间: 0.2 SBU (加上测试)
Little CMS2 依赖
可选
libjpeg-turbo-2.1.5.1 和 libtiff-4.5.0
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/lcms2
安装Little CMS2
应用上游修复的问题打破颜色:
sed '/BufferSize < TagSize/,+1 s/goto Error/TagSize = BufferSize/' \
-i src/cmsio0.c
运行以下命令安装Little CMS2:
./configure --prefix=/usr --disable-static &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install
命令解释
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: jpgicc, linkicc, psicc, tificc, 和 transicc
安装库: liblcms2.so
安装目录: None
简短描述
jpgicc 是用于JPEG的小CMS ICC配置文件应用程序。
linkicc 是小CMS ICC设备链接生成器。
psicc 是小CMS ICC PostScript生成器。
tificc 是小CMS ICC tiff生成器。
transicc 是小CMS颜色空间转换计算器。
liblcms2.so 包含实现lcms2 API的函数。
10.15 libexif-0.6.24
简介libexif
libexif包包含一个库,用于解析、编辑和保存EXIF数据。大多数数码相机生成EXIF文件,这是带有额外标签的JPEG文件,其中包含有关图像的信息。支持EXIF标准2.1中描述的所有EXIF标记。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/libexif/libexif/releases/download/v0.6.24/libexif-0.6.24.tar.bz2
-
下载 MD5 校验和: 00ea6e7ff62d3fd41ea9b2139746703c
-
下载大小: 1.9 MB
-
预计所需磁盘空间: 17 MB
-
预计构建时间: 0.1 SBU
libexif 依赖
可选 (构建文档)
Doxygen-1.9.6 和 Graphviz-7.1.0
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libexif
安装libexif
运行以下命令安装libexif:
./configure --prefix=/usr \
--disable-static \
--with-doc-dir=/usr/share/doc/libexif-0.6.24 &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install
如果您安装了上面所示的依赖项,则构建并安装了文档。如果你没有安装依赖,在源代码树的doc目录下有一个压缩的tarball,可以解压缩到/usr/share/doc/libexif-0.6.24。
命令解释
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: None
安装库: libexif.so
安装目录: /usr/include/libexif 和 /usr/share/doc/libexif-0.6.24
简短描述
libexif.so 包含用于解析、编辑和保存EXIF数据的函数。
10.16 Libgxps-0.3.2
简介libgxps
libgxps包提供了操作XPS文档的接口。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://download.gnome.org/sources/libgxps/0.3/libgxps-0.3.2.tar.xz
-
下载 (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/libgxps/0.3/libgxps-0.3.2.tar.xz
-
下载 MD5 校验和: 0527ac7c8c405445e96a5baa6019a0c3
-
下载大小: 80 KB
-
预计所需磁盘空间: 5.4 MB
-
预计构建时间: 0.1 SBU
Libgxps 依赖
必要
GTK+-3.24.36, Little CMS-2.14, libarchive-3.6.2, libjpeg-turbo-2.1.5.1, libtiff-4.5.0, 和 libxslt-1.1.37
可选
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libgxps
安装Libgxps
运行以下命令安装Libgxps:
mkdir build &&
cd build &&
meson --prefix=/usr --buildtype=release .. &&
ninja
这个包没有附带测试套件。
现在,作为root用户:
ninja install
命令解释
--buildtype=release: 指定适合于包的稳定版本的构建类型,因为默认值可能会产生未优化的二进制文件。
内容
安装程序: xpstojpeg, xpstopdf, xpstopng, xpstops, 和 xpstosvg
安装库: libgxps.so
安装目录: /usr/include/libgxps
简短描述
xpstojpeg 将XPS文档转换为JPEG图像。
xpstopdf 将XPS文档转换为PDF格式。
xpstopng 将XPS文档转换为PNG图像。
xpstops 将XPS文档转换为PostScript。
xpstosvg 将XPS文档转换为SVG图像。
libgxps.so 包含用于操作XPS文档的API函数。
10.17 libjpeg-turbo-2.1.5.1
简介libjpeg-turbo
libjpeg-turbo是原始IJG libjpeg的一个分支,它使用SIMD来加速基线JPEG压缩和解压缩。libjpeg是一个实现JPEG图像编码、解码和转码的库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-2.1.5.1.tar.gz
-
下载 MD5 校验和: aed60d4d776dd5cf00b5a01c609d50f7
-
下载大小: 2.2 MB
-
预计所需磁盘空间: 17 MB (添加17 MB用于测试)
-
预计构建时间: 0.1 SBU (使用并行数=4;添加0.2 SBU用于测试)
libjpeg-turbo 依赖
必要
推荐
NASM-2.16.01 或 yasm-1.3.0 (用于用优化的汇编例程构建包)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libjpeg-turbo
安装libjpeg-turbo
运行以下命令安装libjpeg-turbo:
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=RELEASE \
-DENABLE_STATIC=FALSE \
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/libjpeg-turbo-2.1.5.1 \
-DCMAKE_INSTALL_DEFAULT_LIBDIR=lib \
.. &&
make
要测试结果,执行: make test.
现在,作为root用户:
make install
命令解释
-DWITH_JPEG8=ON: 此开关启用与libjpeg version 8的兼容性。
内容
安装程序: cjpeg, djpeg, jpegtran, rdjpgcom, tjbench, 和 wrjpgcom
安装库: libjpeg.so 和 libturbojpeg.so
安装目录: /usr/share/doc/libjpeg-turbo-2.1.5.1
简短描述
cjpeg 压缩图像文件,在标准输出上生成JPEG/JFIF文件。目前支持的输入文件格式有:PPM (PBMPLUS彩色格式)、PGM (PBMPLUS灰度格式)、BMP和Targa。
djpeg 将图像文件从JPEG/JFIF格式解压为PPM (PBMPLUS彩色格式),PGM (PBMPLUS灰度格式),BMP或Targa格式。
jpegtran 用于JPEG文件的无损转换。
rdjpgcom 显示JPEG文件中的文本注释。
tjbench 用于基准测试libjpeg-turbo的性能。
wrjpgcom 将文本注释插入到JPEG文件中。
libjpeg.so 包含用于读写JPEG图像的函数。
10.18 libmng-2.0.3
简介libmng
libmng库用于希望读取和写入多图像网络图形(MNG,Multiple-image Network Graphics)文件的程序,这些文件相当于PNG文件的动画。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/libmng/libmng-2.0.3.tar.xz
-
下载 MD5 校验和: e9e899adb1b681b17f14d91e261878c5
-
下载大小: 932 KB
-
预计所需磁盘空间: 15 MB
-
预计构建时间: 0.1 SBU
libmng 依赖
必要
libjpeg-turbo-2.1.5.1 和 Little CMS-2.14
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libmng
安装libmng
运行以下命令安装libmng:
./configure --prefix=/usr --disable-static &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install &&
install -v -m755 -d /usr/share/doc/libmng-2.0.3 &&
install -v -m644 doc/*.txt /usr/share/doc/libmng-2.0.3
命令解释
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: None
安装库: libmng.so
安装目录: /usr/share/doc/libmng-2.0.3
简短描述
libmng.so 为希望读取和写入MNG文件的程序提供功能,这些文件是动画文件,没有与某些其他格式相关的专利问题。
10.19 libmypaint-1.6.1
简介libmypaint
libmypaint包,也就是。“brushlib”是一个用于制作笔触的库,它被MyPaint和其他项目使用。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/mypaint/libmypaint/releases/download/v1.6.1/libmypaint-1.6.1.tar.xz
-
下载 MD5 校验和: 7f1dab2d30ce8a3f494354c7c77a2977
-
下载大小: 508 KB
-
预计所需磁盘空间: 11 MB (添加1 MB用于测试)
-
预计构建时间: 0.1 SBU (添加0.3 SBU用于测试)
libmypaint 依赖
必要
推荐
GLib-2.74.5 和 gobject-introspection-1.74.0
可选
Doxygen-1.9.6 (创建XML文档), gegl (0.3 versions only) 和 gperftools
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libmypaint
安装libmypaint
运行以下命令安装libmypaint:
./configure --prefix=/usr &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install
内容
安装程序: None.
安装库: libmypaint.so (还有可选的libmypaint-gegl.so,这本书中没有使用任何包).
安装目录: /usr/include/libmypaint
简短描述
libmypaint.so 包含制作笔画的函数。
10.20 libpng-1.6.39
简介libpng
libpng包包含其他程序用于读取和写入PNG文件的库。PNG格式被设计为GIF的替代品,以及较小程度上TIFF的替代品,具有许多改进和扩展,并且没有专利问题。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/libpng/libpng-1.6.39.tar.xz
-
下载 MD5 校验和: aa1ae92e172417039bda072b702f6326
-
下载大小: 1000 KB
-
预计所需磁盘空间: 15 MB (有测试)
-
预计构建时间: 0.1 SBU (添加0.5 SBU用于测试)
额外下载
-
在libpng中包含动画png功能的推荐补丁(在Firefox, Seamonkey和Thunderbird中使用libpng系统需要): https://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-1.6.39-apng.patch.gz
-
补丁 md5sum: cd63b667723d6cc75e95eca3224f33f7
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libpng
安装libpng
如果你想修补libpng以支持apng文件,在这里应用它:
gzip -cd ../libpng-1.6.39-apng.patch.gz | patch -p1
运行以下命令安装libpng:
./configure --prefix=/usr --disable-static &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install &&
mkdir -v /usr/share/doc/libpng-1.6.39 &&
cp -v README libpng-manual.txt /usr/share/doc/libpng-1.6.39
命令解释
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: libpng-config (符号链接), libpng16-config, pngfix 和 png-fix-itxt
安装库: libpng.so
安装目录: /usr/include/libpng16 和 /usr/share/doc/libpng-1.6.39
简短描述
pngfix 测试、优化和可选地修复PNG文件中的zlib头文件。可选地,在修复时,从文件中剥离辅助块。
png-fix-itxt 修复了在iTXt块中具有不正确长度字段的PNG文件。
libpng-config 是一个shell脚本,为想要使用libpng的应用程序提供配置信息。
libpng.so 包含用于创建和操作PNG格式图形文件的例程。
10.21 libraw-0.21.1
简介libraw
Libraw是一个用于读取从数码相机(CRW/CR2, NEF, RAF, DNG等)获得的RAW文件的库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 MD5 校验和: 2942732de752f46baccd9c6d57823b7b
-
下载大小: 1.6 MB
-
预计所需磁盘空间: 31 MB
-
预计构建时间: 0.2 SBU (使用并行数=4)
libraw 依赖
推荐
libjpeg-turbo-2.1.5.1, JasPer-4.0.0, 和 Little CMS-2.14
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libraw
安装libraw
运行以下命令安装libraw:
autoreconf -fiv &&
./configure --prefix=/usr \
--enable-jpeg \
--enable-jasper \
--enable-lcms \
--disable-static \
--docdir=/usr/share/doc/libraw-0.21.1 &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
命令解释
--enable-jpeg: 此开关启用对jpeg的支持。如果没有安装libjpeg-turbo-2.1.5.1,请删除。
--enable-jasper: 这个开关启用了对jasper的支持。如果没有安装JasPer-4.0.0请删除。
--enable-lcms: 此开关启用对Little CMS2的支持。如果没有安装Little CMS-2.14请删除。
--disable-static: 此开关防止安装库的静态版本。
内容
注意
所有安装的程序都是使用libraw的示例。
安装程序: 4channels, dcraw_emu, dcraw_half, half_mt, mem_image, multirender_test, postprocessing_benchmark, raw-identify, simple_dcraw, 和 unprocessed_raw
安装库: libraw.so 和 libraw_r.so
安装目录: /usr/include/libraw 和 /usr/share/doc/libraw-0.21.1
简短描述
4channels 从RAW数据生成四个TIFF文件,每个通道一个文件。
dcraw_half 模拟“dcraw -h”(参见DCRAW manpage)。
mem_image 模拟“dcraw [-4] [-6] [-e]”(参见DCRAW manpage)。
postprocessing_benchmark 从一个源文件创建八个不同的渲染。第一个和第四个应该是一样的。
simple_dcraw 模拟 “dcraw [-D] [-T] [-v] [-e] [-4]” (参见 DCRAW manpage)。
dcraw_emu 是一个几乎完整的绘图仿真器 (参见 DCRAW manpage)。
half_mt 模拟 “dcraw -h [-w] [-a] [-v]” (参见 DCRAW manpage)。
multirender_test 从一个源文件创建八个不同的渲染。第一个和第四个应该是一样的。
raw-identify 模拟 “dcraw -i [-v]” (参见 DCRAW manpage)。
unprocessed_raw 生成未经处理的原始图像:与蒙面像素和没有黑色减法。
10.22 librsvg-2.54.5
简介librsvg
librsvg包包含一个库和用于操作、转换和查看可缩放矢量图形(SVG)图像的工具。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://download.gnome.org/sources/librsvg/2.54/librsvg-2.54.5.tar.xz
-
下载 (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/librsvg/2.54/librsvg-2.54.5.tar.xz
-
下载 MD5 校验和: eb56ffb37a7db48491177eb9bd135cb5
-
下载大小: 21 MB
-
预计所需磁盘空间: 1 GB (安装24 MB), 添加240 MB用于测试
-
预计构建时间: 1.7 SBU (使用并行数=4), 添加1.1 SBU用于测试
librsvg 依赖
必要
Cairo-1.17.6, gdk-pixbuf-2.42.10, Pango-1.50.12, 和 rustc-1.67.1
推荐
gobject-introspection-1.74.0 和 Vala-0.56.4
可选
docutils-0.19 (用于手册页), Gi-DocGen-2023.1 (用于文档), 和 Xorg Fonts (用于测试)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/librsvg
安装librsvg
运行以下命令安装librsvg:
./configure --prefix=/usr \
--enable-vala \
--disable-static \
--docdir=/usr/share/doc/librsvg-2.54.5 &&
make
要测试结果,执行: make -k check. 在测试期间,一些二进制文件是用不同的调试级别重新构建的,因此您应该在测试完成后再次运行make,以确保一切都准备好安装。
现在,作为root用户:
make install
注意
如果您使用“DESTDIR”方法将软件包安装到系统上,则没有安装一个重要的文件,应该复制和/或生成该文件。以root用户使用以下命令生成:
gdk-pixbuf-query-loaders --update-cache
命令解释
--enable-vala: 此开关支持构建Vala绑定。如果你没有安装Vala-0.56.4,请移除此开关。
--disable-static: 此开关防止安装库的静态版本。
--disable-introspection: 如果没有安装Gobject Introspection,请使用此开关。
--disable-gtk-doc: 此开关阻止构建API文档,即使Gi-DocGen-2023.1(尽管该选项的名称)可用。
内容
安装程序: rsvg-convert
安装库: librsvg-2.so
安装目录: /usr/include/librsvg-2.0 和 /usr/share/doc/librsvg-2.54.5
简短描述
rsvg-convert 用于将图像转换为PNG, PDF, PS, SVG等格式。
librsvg-2.so 提供了渲染可缩放矢量图形的功能。
libpixbufloader-svg.so是Gdk Pixbuf插件,允许GTK+应用程序渲染可缩放矢量图形图像。
10.23 Libspiro-20220722
简介libspiro
Libspiro将采用一系列spiro控制点并将其转换为一系列bezier splines,然后可以以无数种方式使用bezier。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/fontforge/libspiro/releases/download/20220722/libspiro-dist-20220722.tar.gz
-
下载 MD5 校验和: c21f86e6c1ad65ed4cb1f754f6d7563c
-
下载大小: 428 KB
-
预计所需磁盘空间: 5.1 MB (如果运行测试,则添加1.3 MB)
-
预计构建时间: 0.1 SBU
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libspiro
安装libspiro
运行以下命令安装libspiro:
./configure --prefix=/usr --disable-static &&
make
要测试结果,执行: make check.
现在,作为root用户:
make install
命令解释
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: None
安装库: libspiro.so
安装目录: None
简短描述
libspiro.so 是一个可共享的库,程序可以使用它来为您执行Spiro计算。
10.24 libtiff-4.5.0
简介libtiff
libtiff包包含TIFF库和相关实用程序。许多程序都使用这些库来读写TIFF文件,而这些实用程序则用于处理TIFF文件的一般工作。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://download.osgeo.org/libtiff/tiff-4.5.0.tar.gz
-
下载 MD5 校验和: db9e220a1971acc64487f1d51a20dcaa
-
下载大小: 3.7 MB
-
预计所需磁盘空间: 59 MB (有测试)
-
预计构建时间: 0.2 SBU (有测试)
libtiff 依赖
推荐
可选
Freeglut-3.4.0 (需要 tiffgt), libjpeg-turbo-2.1.5.1, sphinx-6.1.3, libwebp-1.3.0, JBIG-KIT, 和 LERC
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libtiff
安装libtiff
运行以下命令安装libtiff:
mkdir -p libtiff-build &&
cd libtiff-build &&
cmake -DCMAKE_INSTALL_DOCDIR=/usr/share/doc/libtiff-4.5.0 \
-DCMAKE_INSTALL_PREFIX=/usr -G Ninja .. &&
ninja
要测试结果,执行: ninja test.
现在,作为root用户:
ninja install
内容
安装程序: fax2ps, fax2tiff, pal2rgb, ppm2tiff, raw2tiff, tiff2bw, tiff2pdf, tiff2ps, tiff2rgba, tiffcmp, tiffcp, tiffcrop, tiffdither, tiffdump, tiffgt, tiffinfo, tiffmedian, tiffset 和 tiffsplit
安装库: libtiff.so 和 libtiffxx.so
安装目录: /usr/share/doc/tiff-4.5.0
简短描述
fax2ps 将TIFF传真转换为压缩的PostScript文件。
fax2tiff 从原始传真数据创建TIFF F类传真文件。
pal2rgb 将调色板颜色TIFF图像转换为全彩色图像。
ppm2tiff 从PPM图像文件创建TIFF文件。
raw2tiff 将原始字节序列转换为TIFF。
tiff2bw 将彩色TIFF图像转换为灰度图像。
tiff2pdf 将TIFF图像转换为PDF文档。
tiff2ps 将TIFF图像转换为PostScript文件。
tiff2rgba 将各种TIFF图像转换为RGBA TIFF图像。
tiffcmp 比较两个TIFF文件。
tiffcp 复制(并可能转换)TIFF文件。
tiffcrop 选择、复制、裁剪、转换、提取和/或处理一个或多个TIFF文件。
tiffdither 使用抖动将灰度图像转换为双电平。
tiffdump 打印有关TIFF文件的逐字信息。
tiffgt 显示存储在TIFF文件中的图像。
tiffinfo 打印有关TIFF文件的信息。
tiffmedian 将中位数切割算法应用于TIFF文件中的数据。
tiffset 将TIFF标头的值设置为指定值。
tiffsplit 将多图像TIFF拆分为单图像TIFF文件。
libtiff.so 包含libtiff程序以及其他程序用于读写TIFF文件的API函数。
libtiffxx.so 包含程序用来读写TIFF文件的C++ API函数。
10.25 libwebp-1.3.0
简介libwebp
libwebp包包含一个库和支持程序来编码和解码WebP格式的图像。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): http://downloads.webmproject.org/releases/webp/libwebp-1.3.0.tar.gz
-
下载 MD5 校验和: 994cf2efb664ef5140fa0b56b83fa721
-
下载大小: 4.0 MB
-
预计所需磁盘空间: 43 MB
-
预计构建时间: 0.3 SBU
libwebp 依赖
推荐
libjpeg-turbo-2.1.5.1, libpng-1.6.39, libtiff-4.5.0, 和 SDL-1.2.15 (for improved 3D Acceleration)
可选
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/libwebp
安装libwebp
运行以下命令安装libwebp:
./configure --prefix=/usr \
--enable-libwebpmux \
--enable-libwebpdemux \
--enable-libwebpdecoder \
--enable-libwebpextras \
--enable-swap-16bit-csp \
--disable-static &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
命令解释
--enable-swap-16bit-csp: 该开关支持16位色彩空间的字节交换。
--disable-static: 此开关防止安装库的静态版本。
内容
安装程序: cwebp, dwebp, gif2webp, img2webp, vwebp, webpinfo, 和 webpmux
安装库: libsharpyuv.so, libwebpdecoder.so, libwebpdemux.so, libwebpmux.so, 和 libwebp.so
安装目录: /usr/include/webp
简短描述
cwebp 使用WebP格式压缩图像。
dwebp 解压WebP文件为PNG, PAM, PPM或PGM图像。
gif2webp 将GIF图像转换为WebP图像。
img2webp 从一系列输入图像创建一个动画WebP文件。
vwebp 解压WebP文件并将其显示在窗口中。
webpinfo 打印出WebP文件的阻塞级结构,并执行基本的完整性检查。
webpmux 从非动画WebP图像创建动画WebP文件,从动画WebP图像提取帧,并管理XMP/EXIF元数据和ICC配置文件。
libwebp.so 包含WebP编码和解码的API函数。
10.26 mypaint-brushes-1.3.1
简介mypaint-brushes
mypaint-brushes包包含使用libmypaint的包使用的画笔。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/mypaint/mypaint-brushes/releases/download/v1.3.1/mypaint-brushes-1.3.1.tar.xz
-
下载 MD5 校验和: 7241032d814cb91d2baae7d009a2a2e0
-
下载大小: 1.3 MB
-
预计所需磁盘空间: 3.4 MB
-
预计构建时间: 小于 0.1 SBU
mypaint-brushes 依赖
运行时要求
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/mypaint-brushes
安装mypaint-brushes
运行以下命令安装mypaint-brushes:
./configure --prefix=/usr &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
内容
安装程序: None.
安装库: None.
安装目录: /usr/share/mypaint-data.
10.27 newt-0.52.23
简介newt
Newt是一个用于彩色文本模式、基于小部件的用户界面的编程库。它可以用来添加堆叠窗口,入口小部件,复选框,单选按钮,标签,纯文本字段,滚动条等,文本模式的用户界面。Newt基于S-Lang库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://releases.pagure.org/newt/newt-0.52.23.tar.gz
-
下载 MD5 校验和: 70aefeff0f3e9444a69dbdae9a931442
-
下载大小: 173 KB
-
预计所需磁盘空间: 5.5 MB
-
预计构建时间: 小于 0.1 SBU
Newt 依赖
必要
推荐
GPM-1.20.7 (运行时)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/newt
安装newt
运行如下命令安装newt:
sed -e '/install -m 644 $(LIBNEWT)/ s/^/#/' \
-e '/$(LIBNEWT):/,/rv/ s/^/#/' \
-e 's/$(LIBNEWT)/$(LIBNEWTSH)/g' \
-i Makefile.in &&
./configure --prefix=/usr \
--with-gpm-support \
--with-python=python3.11 &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
命令解释
sed -e … -i Makefile.in: 禁用静态库的安装。
--with-gpm-support: 该开关通过GPM使鼠标支持newt应用程序。
--with-python=python3.11: 通过显式给出python模块所在目录的名称,此开关可以防止构建python2模块。
内容
安装程序: whiptail
安装库: libnewt.so, whiptcl.so, 和 /usr/lib/python3.11/site-packages/_snack.so
安装目录: None
简短描述
whiptail 显示shell脚本中的对话框。
libnewt.so 是用于彩色文本模式、基于小部件的用户界面的库。
10.28 opencv-4.7.0
简介opencv
opencv包包含主要针对实时计算机视觉的图形库。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/opencv/opencv/archive/4.7.0/opencv-4.7.0.tar.gz
-
下载 MD5 校验和: 13e13244cb0cc6ec4f01eacd38d05d17
-
下载大小: 87 MB
-
预计所需磁盘空间: 675 MB
-
预计构建时间: 3.3 SBU (使用并行数=4)
额外下载
注意
另外一个以“ippicv”(集成性能原语)开头的文件将在构建过程的cmake部分自动下载。此下载特定于系统架构。
opencv 依赖
必要
推荐
FFmpeg-5.1.2, gst-plugins-base-1.22.0, GTK+-3.24.36, JasPer-4.0.0, libexif-0.6.24, libjpeg-turbo-2.1.5.1, libpng-1.6.39, libtiff-4.5.0, libwebp-1.3.0, v4l-utils-1.22.1, 和 xine-lib-1.2.13
可选
apache-ant-1.10.13, Doxygen-1.9.6, Java-19.0.2, Python-2.7.18, blas, Cuda, Eigen, OpenEXR, GDAL, lapack, libdc1394, NumPy, Threading Building Blocks (TBB), 和 VTK - The Visualization Toolkit,
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/opencv
安装opencv
如果你下载了可选模块,现在解压缩它们:
tar -xf ../opencv_contrib-4.7.0.tar.gz
运行以下命令安装opencv:
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_CXX11=ON \
-DBUILD_PERF_TESTS=OFF \
-DWITH_XINE=ON \
-DBUILD_TESTS=OFF \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DBUILD_WITH_DEBUG_INFO=OFF \
-Wno-dev .. &&
make
该软件包没有附带测试套件。
现在,作为root用户:
make install
命令解释
-DWITH_XINE=ON: 这个选项指示make过程使用xine-lib-1.2.13。.
-DENABLE_PRECOMPILED_HEADERS=OFF: 为了与gcc-6.1及更高版本兼容,需要此选项。
-DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.7.0/modules: 指示构建系统构建其他模块。
内容
安装程序: opencv_annotation, opencv_interactive-calibration, opencv_model_diagnostics, opencv_version, opencv_visualisation, 和 setup_vars_opencv4.sh
安装库: libopencv_calib3d.so, libopencv_core.so, libopencv_dnn.so, libopencv_features2d.so, libopencv_flann.so, libopencv_gapi.so, libopencv_highgui.so, libopencv_imgcodecs.so, libopencv_imgproc.so, libopencv_ml.so, libopencv_objdetect.so, libopencv_photo.so, libopencv_stitching.so, libopencv_video.so, 和 libopencv_videoio.so
安装目录: /usr/include/opencv4, /usr/lib/cmake/opencv4, /usr/lib/python3.11/site-packages/cv2, /usr/share/licenses/opencv4, /usr/share/opencv4, 和 /usr/share/java/opencv4.
10.29 OpenJPEG-2.5.0
简介OpenJPEG
OpenJPEG是JPEG-2000标准的开源实现。OpenJPEG完全尊重JPEG-2000规范,可以对16位无损图像进行压缩/解压缩。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/uclouvain/openjpeg/archive/v2.5.0/openjpeg-2.5.0.tar.gz
-
下载 MD5 校验和: 5cbb822a1203dd75b85639da4f4ecaab
-
下载大小: 1.8 MB
-
预计所需磁盘空间: 13 MB
-
预计构建时间: 0.2 SBU
OpenJPEG 依赖
必要
可选
Little CMS-2.14, libpng-1.6.39, libtiff-4.5.0, 和 Doxygen-1.9.6 (来构建API文档)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/openjpeg2
安装OpenJPEG
运行以下命令安装OpenJPEG:
mkdir -v build &&
cd build &&
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_STATIC_LIBS=OFF .. &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install &&
pushd ../doc &&
for man in man/man?/* ; do
install -v -D -m 644 $man /usr/share/$man
done
popd
内容
安装程序: opj_compress, opj_decompress, 和 opj_dump
安装库: libopenjp2.so
安装目录: /usr/include/openjpeg-2.5 和 /usr/lib/openjpeg-2.5
简短描述
opj_compress 将各种图像格式转换为jpeg2000格式。
opj_decompress 将jpeg2000图像转换为其他图像类型。
opj_dump 读取jpeg2000图像并将内容转储到标准输出。
10.30 Pixman-0.42.2
简介Pixman
Pixman包包含一个库,提供低级像素操作功能,如图像合成和梯形光栅化。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://www.cairographics.org/releases/pixman-0.42.2.tar.gz
-
下载 MD5 校验和: a0f6ab8a1d8e0e2cd80e935525e2a864
-
下载大小: 940 KB
-
预计所需磁盘空间: 30 MB (有测试)
-
预计构建时间: 0.5 SBU (有测试)
Pixman 依赖
可选
GTK+-2.24.33 和 libpng-1.6.39 (用于测试和demo)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/pixman
安装Pixman
运行以下命令安装Pixman:
mkdir build &&
cd build &&
meson --prefix=/usr --buildtype=release &&
ninja
要测试结果,执行: ninja test.
现在,作为root用户:
ninja install
命令解释
--buildtype=release: 指定适合于包的稳定版本的构建类型,因为默认值可能会产生未优化的二进制文件。
内容
安装程序: None
安装库: libpixman-1.so
安装目录: /usr/include/pixman-1
简短描述
libpixman-1.so 包含提供低级像素操作功能的函数。
10.31 Poppler-23.02.0
简介Poppler
Poppler包包含一个PDF渲染库和用于操作PDF文件的命令行工具。这对于作为共享库提供PDF呈现功能非常有用。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://poppler.freedesktop.org/poppler-23.02.0.tar.xz
-
下载 MD5 校验和: ce7eef12c40dcd78998a43422c2c71ef
-
下载大小: 1.8 MB
-
预计所需磁盘空间: 89 MB (使用Qt5库和测试)
-
预计构建时间: 0.6 SBU (有并行数=4, Qt5库,和测试)
额外下载
Poppler编码数据
-
下载 (HTTP): https://poppler.freedesktop.org/poppler-data-0.4.12.tar.gz
-
下载 MD5 校验和: 67ee4a40aa830b1f6e2560ce5f6471ba
-
下载大小: 4.3 MB
-
预计所需磁盘空间: 26 MB
-
预计构建时间: 小于 0.1 SBU
附加包由用于Poppler的编码文件组成。编码文件是可选的,如果它们存在,Poppler将自动读取它们。安装后,它们使Poppler能够正确渲染CJK和Cyrillic。
Poppler 依赖
必要
CMake-3.25.2, Fontconfig-2.14.2, 和 gobject-introspection-1.74.0
推荐
Boost-1.81.0, Cairo-1.17.6, Little CMS-2.14, libjpeg-turbo-2.1.5.1, libpng-1.6.39, nss-3.88.1, 和 OpenJPEG-2.5.0
可选
cURL-7.88.1, gdk-pixbuf-2.42.10, git-2.39.2 (下载测试文件), GTK-Doc-1.33.2, GTK+-3.24.36, libtiff-4.5.0, Qt-5.15.8 (Okular-22.12.2 中PDF支持的要求), 和 Qt-6.1 or later.
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/poppler
安装Poppler
运行以下命令安装Poppler:
mkdir build &&
cd build &&
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTDATADIR=$PWD/testfiles \
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
.. &&
make
为了运行测试套件,需要一些测试用例,并且只能从git存储库中获得。下载它们的命令是: git clone –depth 1 https://gitlab.freedesktop.org/poppler/test.git testfiles. 之后执行: LC_ALL=en_US.UTF-8 make test.
现在,作为root用户:
make install
要安装文档,以root身份运行以下命令:
install -v -m755 -d /usr/share/doc/poppler-23.02.0 &&
cp -vr ../glib/reference/html /usr/share/doc/poppler-23.02.0
Poppler 数据
如果您下载了额外的编码数据包,请通过发出以下命令安装它:
tar -xf ../../poppler-data-0.4.12.tar.gz &&
cd poppler-data-0.4.12
现在,作为root用户:
make prefix=/usr install
命令解释
-DCMAKE_BUILD_TYPE=Release: 此开关用于应用更高级别的编译器优化。
-DTESTDATADIR=$PWD/testfiles: 告诉测试程序辅助文件的位置。
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON: 安装某些程序所需的旧Xpdf头文件。
-DENABLE_GTK_DOC=ON: 如果安装了GTK-Doc,并且希望重新构建和安装API文档,则使用此参数。
-DENABLE_BOOST=OFF: 如果没有安装boost,请使用此参数(Qt5的Splash后端建议使用boost)。
LC_ALL=en_US.UTF-8 make test: 运行测试套件。环境变量LC_ALL=en_US.UTF-8仅在默认语言环境不包括UTF-8时才需要。
内容
安装程序: pdfattach, pdfdetach, pdffonts, pdfimages, pdfinfo, pdfseparate, pdfsig, pdftocairo, pdftohtml, pdftoppm, pdftops, pdftotext, 和 pdfunite
安装库: libpoppler.so, libpoppler-cpp.so, libpoppler-glib.so, 和 libpoppler-qt5.so
安装目录: /usr/include/poppler, /usr/share/poppler, 和 /usr/share/doc/poppler-23.02.0
简短描述
pdfattach 将新的嵌入式文件添加到现有的PDF文件。
pdfdetach 列出或从PDF文件中提取嵌入式文件。
pdffonts 列出PDF文件中使用的字体以及每种字体的各种信息。
pdfimages 将PDF文件中的图像保存为PPM、PBM或JPEG文件。
pdfinfo 从PDF文件中打印“信息”字典的内容(加上一些其他有用的信息)。
pdfseparate 从PDF文件中提取单个页面。
pdfsig 验证PDF文档中的数字签名。
pdftocairo 使用poppler库的cairo输出设备将PDF文件转换为几种格式(PNG, JPEG, PDF, PS, EPS, SVG)之一。
pdftohtml 将PDF文件转换为HTML。
pdftoppm 将PDF文件转换为PBM, PGM和PPM格式。
pdftops 将PDF文件转换为Postscript格式。
pdftotext 将PDF文件转换为纯文本。
pdfunite 将多个PDF文件(按照它们在命令行中出现的顺序)合并为一个PDF输出文件。
libpoppler.so 包含呈现PDF文件的API函数。
libpoppler-cpp.so 是一个用于呈现PDF文件的C++后端。
libpoppler-glib.so 是一个包装器库,用于将PDF呈现函数与GTK+连接起来。
libpoppler-qt5.so 是一个包装器库,用于将PDF呈现函数与Qt5连接起来。
10.32 Potrace-1.16
简介Potrace
Potrace是一个将位图(PBM、PGM、PPM或BMP格式)转换为几种矢量文件格式之一的工具。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://downloads.sourceforge.net/potrace/potrace-1.16.tar.gz
-
下载 MD5 校验和: 5f0bd87ddd9a620b0c4e65652ef93d69
-
下载大小: 644 KB
-
预计所需磁盘空间: 7.1 MB (包括测试)
-
预计构建时间: 小于 0.1 SBU (包括测试)
Potrace 依赖
推荐
LLVM-15.0.7 (包括 clang)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/potrace
安装Potrace
运行以下命令安装Potrace:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/potrace-1.16 \
--enable-a4 \
--enable-metric \
--with-libpotrace &&
make
要运行测试套件,执行: make check.
现在,作为root用户:
make install
命令解释
--enable-a4: 使用A4作为默认纸张尺寸。
--enable-metric: 默认使用公制单位(厘米)。
--disable-static: 此开关防止安装库的静态版本。
--with-libpotrace: 安装库和头文件。
内容
安装程序: mkbitmap, potrace
安装库: libpotrace.so
安装目录: /usr/share/doc/potrace-1.16
简短描述
mkbitmap 通过缩放和过滤将图像转换为位图。
potrace 将位图转换为矢量图形。
libpotrace.so 是一个用于将位图转换为矢量图形的库。
10.33 Qpdf-11.2.0
简介Qpdf
Qpdf包包含命令行程序和一个库,用于对PDF文件进行结构化的、保留内容的转换。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/qpdf/qpdf/releases/download/v11.2.0/qpdf-11.2.0.tar.gz
-
下载 MD5 校验和: 8fa1fc5d8b99e41c4f9d0760d6733756
-
下载大小: 18 MB
-
预计所需磁盘空间: 249 MB (添加2 MB用于测试)
-
预计构建时间: 0.5 SBU (使用并行数=4;添加0.5 SBU用于测试)
Qpdf 依赖
必要
可选
fop-2.8, GnuTLS-3.8.0, 和 sphinx-6.1.3
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/qpdf
安装Qpdf
运行以下命令安装Qpdf:
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_STATIC_LIBS=OFF \
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/qpdf-11.2.0 \
.. &&
make
要测试结果,执行: ctest.
现在,作为root用户:
make install
内容
安装程序: fix-qdf, qpdf, 和 zlib-flate
安装库: libqpdf.so
安装目录: /usr/lib/cmake/qpdf, /usr/include/qpdf, 和 /usr/share/doc/qpdf-11.2.0
简短描述
fix-qdf 用于在编辑后修复QDF格式的PDF文件。
qpdf 用于将一个PDF文件转换为另一个等效的PDF文件。
zlib-flate 是原始的zlib压缩程序。
libqpdf.so 包含Qpdf API函数。
10.34 qrencode-4.1.1
简介qrencode
Qrencode是一个快速而紧凑的库,用于将数据编码为QR码符号,QR码符号是一种二维符号,可以通过手持终端(如带有CCD传感器的手机)扫描。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://fukuchi.org/works/qrencode/qrencode-4.1.1.tar.bz2
-
下载 MD5 校验和: de7185bcab635a34730e1b73d4efa705
-
下载大小: 451 KB
-
预计所需磁盘空间: 5.0 MB (对于文档,添加5 MB用于测试)
-
预计构建时间: 小于 0.1 SBU, 添加0.1 SBU用于测试
Qrencode 依赖
推荐
可选
Doxygen-1.9.6 用于生成文档,以及 SDL2-2.26.3 用于测试
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/qrencode
安装qrencode
运行以下命令安装libqrencode:
./configure --prefix=/usr &&
make
如果你已经安装了Doxygen-1.9.6,你可以通过以下命令来构建文档:
doxygen
测试必须在安装包之后运行。
现在,作为root用户:
make install
如果你已经构建了可选的文档,以root用户安装:
install -vdm 755 /usr/share/doc/qrencode-4.1.1 &&
mv html/* /usr/share/doc/qrencode-4.1.1
为了测试结果,如果你已经通过了--with-tests选项来configure,执行:make check。
命令解释
--with-tests: 这个选项允许构建测试程序。它需要 SDL2-2.26.3。
--without-tools: 此选项阻止构建qrencode可执行文件,从而消除了对 libpng-1.6.39的需求。
内容
安装程序: qrencode
安装库: libqrencode.so
安装目录: /usr/share/doc/qrencode-4.1.1 (可选)
简短描述
qrencode 将输入数据编码为QR码,并将其保存为PNG或EPS图像。
libqrencode.so 包含在QR码符号中编码数据的函数。
10.35 sassc-3.6.2
简介sassc
SassC是libsass的包装,libsass是一种CSS预处理器语言。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/sass/sassc/archive/3.6.2/sassc-3.6.2.tar.gz
-
下载 MD5 校验和: 4c3b06ce2979f2a9f0a35093e501d8bb
-
下载大小: 28 KB
-
预计所需磁盘空间: 5.1 MB
-
预计构建时间: 小于 0.1 SBU
额外下载
-
下载 (HTTP): https://github.com/sass/libsass/archive/3.6.5/libsass-3.6.5.tar.gz
-
下载 MD5 校验和: c49765b9b3824dcd4a7423225ca28bad
-
下载大小: 336 KB
-
预计所需磁盘空间: 139 MB
-
预计构建时间: 0.4 SBU (使用并行数=4)
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/sassc
安装sassc
首先,构建库:
tar -xf ../libsass-3.6.5.tar.gz &&
pushd libsass-3.6.5 &&
autoreconf -fi &&
./configure --prefix=/usr --disable-static &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
构建命令行包装器:
popd &&
autoreconf -fi &&
./configure --prefix=/usr &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
内容
安装程序: sassc
安装库: libsass.so
安装目录: /usr/include/sass
简短描述
sassc 提供libsass库的命令行接口。
10.36 woff2-1.0.2
简介WOFF2
WOFF2是一个将字体从TTF格式转换为woff2.0格式的库。它还允许从WOFF 2.0解压到TTF。WOFF 2.0格式使用Brotli压缩算法压缩适合在CSS @font-face规则中下载的字体。
已知此包可以使用LFS 11.3平台进行构建并正常工作。
包信息
-
下载 (HTTP): https://github.com/google/woff2/archive/v1.0.2/woff2-1.0.2.tar.gz
-
下载 MD5 校验和: 793c8844845351cb80730a74937e411b
-
下载大小: 39 KB
-
预计所需磁盘空间: 1.6 MB
-
预计构建时间: 小于 0.1 SBU
WOFF2 依赖
必要
用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/woff2
安装WOFF2
运行以下命令安装WOFF2:
mkdir out &&
cd out &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release .. &&
make
这个包没有附带测试套件。
现在,作为root用户:
make install
内容
安装程序: None
安装库: libwoff2common.so, libwoff2dec.so 和 libwoff2enc.so
安装目录: /usr/include/woff2
简短描述
libwoff2common.so 提供libwoff2dec和libwoff2enc库使用的共享数据。
libwoff2dec.so 是WOFF2解码器库。
libwoff2enc.so 是WOFF2编码器库。