VS2005编译Cairo1.8

本文详细介绍了如何将Cairo 1.8及其相关组件Pixman、Zlib和Libpng移植并编译到Visual Studio环境中,特别针对不熟悉编译流程的开发者。文中提供了具体的步骤指导及代码修改建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一篇将流行的开源矢量库串起来乱侃了一番,希望还不了解矢量库的网友已经知道了这些大名鼎鼎的开源Project。了解了之后就要使用他们,但是使用的第一步,应该是先编译过去,然后才能谈使用。编译都没有做到的话,使用起来就更加困难重重了。按我之前的计划,将先用VisualStudio 2005将Cairo、Skia这两个库编译过去,然后再说怎么来用他们。

 

本篇,就是Cairo1.8版移植到VC下的编译过程。之所以说移植,是因为这两个工程自身都不带VC Project,而直接建立一个工程将代码直接加进来又编译不过去,这意味着需要修改代码。也说明这些工程在开发的过程中,也没有太多的考虑要用VC来编译。但VC的使用者不在少数,这是一个造福“人类”的过程。另外Cairo其实已经出了1.9.x版了,但是本篇只编译1.8的原因是1.9版的修改量相当的巨大,几乎每一个代码文件都有着不小的改动,而且经过1.9的一番改动之后,要移植到VC就更为困难了。至少我进行了一次简单尝试之后发现没有成功,其复杂度远比1.8高,加上又没有更多的时间去研究他了,于是就放弃1.9版了。但是1.8的移植仍然是很有价值的,至少目前还在使用1.8甚至1.8以下版本的软件工程还是很多的,而且1.8版的效率也还是相当不错的!

 

好了,废话不多说,我们按步就班的开始移植工作。

第一步就是要先下载Cairo以及与之关联的工程包,关联的工程列表如下:

Cairo:http://www.cairographics.org/releases/ 这里有Cairo的历史版本,我们下1.8.10就可以了,这也是放出来的1.8的最高版本了

Pixman:和上面同一个链接,下载其0.18.4,这是可以配合1.8的版本,0.19的Pixman我没有测试过,有兴趣各位可以自行测试

Zlib、Libpng:这两个我就不多说了,自己Google吧…………

下完以上4个工程之后,Zlib和Libpng两个的编译是不需要讲的,因为他们自带VC的工程文件,解包,双击,Build,搞定。

 

Pixman是pixel manipulation的意思,即像素操作,这是一套工程无关的以位图/像素运算为基础的SDK,其包含的功能其实也挺丰富的,Blend/AlphaBlend、Edge Raster、Gradient Fill、Region、Fill等一大堆,而且还有SSE优化,这是给Cairo用的底层库。马上我们就来编译这个库。

 

第二步,编译Pixman,然后才能编译Cairo。编译Pixman的过程,其实是比较轻松的,建立VC工程(最后使用.lib工程),将解开后的Pixman包文件里的所有.c文件除pixman-vmx.c、pixman-arm-neon.c和pixman-arm-simd.c这三个文件不加,pixman-conical-gradient.c加不加无所谓(我就没有加),其它的都加进来。而.h文件就无所谓了,加不加入工程都可以正常编译。然后给工程的Debug和Release版都加入USE_MMX、USE_SSE2和PACKAGE这3个宏,Build吧!这一步应该是比较轻松的就可以通过的。如果出现有个体差异,请注意观察和解决。如果解决不了,可以通过QQ找我帮助。

 

第三步,编译Cairo。这一步就相对复杂点了,因为需要少量的修改代码。而且在编译之前,需要进行一点点小的Cairo知识普及:

 

Cairo有一个最大的特点就是支持类型众多的Backends,也就是我在第一篇里提到过的各种Render Target,如PDF/SVG/GDI等等。每一种Backends,其对应有一个.c文件来实现。本篇没有打算将每一个Backends都编译过去,那样的话篇章就太长了,所以本篇只选择了几个最常用的,基本上也是大家都用得到其它的可能基本都用不到的Backends,将其编译过去。剩下的那些如果需要的话,可以按照我说的方法,依葫芦画瓢的加入工程并编译过去。另外Cairo支持使用FreeType字体,但既然我们是用VC来做编译,那当然就要使用Win32的GDI字体了,况且GDI字体有一个好处就是无需做任何配置,就可以生成出质量很好的字体,不比FreeType差,FreeType的那个尤其是AntiAliasing效果我是看着不太舒服的。。。。。。

 

 现在建立Cairo的工程DLL(用Lib也可以,只有一点点的小区别,下面将会说明),将下面的.c文件添加到工程里:

cairo-analysis-surface.c

cairo-arc.c

cairo-array.c

cairo-atomic.c

cairo-base85-stream.c

cairo-bentley-ottmann.c

cairo-cache.c

cairo-cff-subset.c

cairo-clip.c

cairo-color.c

cairo-debug.c

cairo-deflate-stream.c

cairo-fixed.c

cairo-font-face-twin-data.c

cairo-font-face-twin.c

cairo-font-face.c

cairo-font-options.c

cairo-freelist.c

cairo-gstate.c

cairo-hash.c

cairo-hull.c

cairo-image-surface.c

cairo-lzw.c

cairo-matrix.c

cairo-meta-surface.c

cairo-misc.c

cairo-mutex.c

cairo-output-stream.c

cairo-paginated-surface.c

cairo-path-bounds.c

cairo-path-fill.c

cairo-path-fixed.c

cairo-path-stroke.c

cairo-path.c

cairo-pattern.c

cairo-pdf-operators.c

cairo-pdf-surface.c

cairo-pen.c

cairo-png.c

cairo-polygon.c

cairo-ps-surface.c

cairo-rectangle.c

cairo-region.c

cairo-scaled-font-subsets.c

cairo-scaled-font.c

cairo-skiplist.c

cairo-slope.c

cairo-spline.c

cairo-stroke-style.c

cairo-surface-fallback.c

cairo-surface.c

cairo-system.c

cairo-traps.c

cairo-truetype-subset.c

cairo-type1-fallback.c

cairo-type3-glyph-surface.c

cairo-unicode.c

cairo-user-font.c

cairo-version.c

cairo-wideint.c

cairo-win32-font.c

cairo-win32-printing-surface.c

cairo-win32-surface.c

cairo.c

check-link.c

 

好像列表有点长,将就吧……

添加完之后,开始修改代码文件:

A、如果是编译为lib工程(编译DLL的跳过),打开cairo.h在第53行左右位置,加入下面代码:

#ifdef _LIB

#define CAIRO_WIN32_STATIC_BUILD 1

#endif

因为建立为了LIB工程的话,VC会自动的加入预定义的宏_LIB,所以判断如果有这个宏,就定义CAIRO_WIN32_STATIC_BUILD为1

 

B、打开cairo-features.h文件,将#define CAIRO_HAS_FT_FONT 1改为0,#define CAIRO_HAS_SVG_SURFACE 1改为0,CAIRO_HAS_XLIB_SURFACE 1和CAIRO_HAS_XLIB_XRENDER_SURFACE 1都改为0。

 

C、(编译为DLL的可以忽略)打开cairoint.h将下面的定义:

#ifdef _MSC_VER

#define cairo_public __declspec(dllexport)

#endif

 

 改成:

 

#ifdef _MSC_VER

#ifndef _LIB

#define cairo_public __declspec(dllexport)

#endif

#endif

 

代码修改过程到此为止,怎么样,简单吧?呵呵,因为我们只选择了PDF/GDI/PS/Image/PNG这几种Backends,所以修改过程是非常简单的。

 

现在打开工程的Preprocessor属性页,也就是预定义管理,添加下面的预定义宏:

CAIRO_HAS_WIN32_FONT

CAIRO_HAS_WIN32_SURFACE

CAIRO_HAS_PNG_FUNCTIONS

CAIRO_HAS_PS_SURFACE

CAIRO_HAS_PDF_SURFACE

 

 如果是DLL工程,再打开附加Lib属性页,把zlib、libpng和pixman这三个工程编译好的lib文件加进去,或者使用VC特有的工程依赖自动来管理也可以。编译为lib的话就不需要了,因为这些库将会在使用cairo.lib的时候才会需要用到。

 

所以的准备工作都已经就绪,下一步就是泡杯茶,并按下Build按钮,等待还算是比较快的Cairo1.8编译过程吧!

 

 

PS:编译过程中的一个注意事项:在建立工程或者打开zlib/libpng这些工程的时候,一定要注意看CRT库的设定,必须要全部编译为相同的CRT库,比如要么都是MultiThread DLL要么都是MultiThread,或者就两个都编译出来也可以。

[root@node3 ~]# docker build -t centos-openjdk:1.0 . Sending build context to Docker daemon 218.7MB Step 1/10 : FROM centos:7 —> eeb6ee3f44bd Step 2/10 : MAINTAINER ljy<17354425003@163.com —> Using cache —> 85ad4a293894 Step 3/10 : ENV MYPATH /usr/local —> Using cache —> c23361382ec7 Step 4/10 : WORKDIR $MYPATH —> Using cache —> 2abf3bdd31a9 Step 5/10 : RUN rm -rf /etc/yum.repos.d/* && curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo && sed -i -e ‘/mirrors.cloud.aliyuncs.com/d’ -e ‘/mirrors.aliyuncs.com/d’ /etc/yum.repos.d/CentOS-Base.repo && yum clean all && yum makecache —> Running in 503aba41d245 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 2523 100 2523 0 0 3313 0 --:–:-- --:–:-- --:–:-- 3311 Loaded plugins: fastestmirror, ovl Cleaning repos: base extras updates Loaded plugins: fastestmirror, ovl Determining fastest mirrors Metadata Cache Created Removing intermediate container 503aba41d245 —> b47e5c1b9529 Step 6/10 : RUN yum -y install vim net-tools glibc.i686 java-1.8.0-openjdk-devel —> Running in 41acb49268ea Loaded plugins: fastestmirror, ovl Loading mirror speeds from cached hostfile Resolving Dependencies –> Running transaction check —> Package glibc.i686 0:2.17-326.el7_9.3 will be installed –> Processing Dependency: glibc-common = 2.17-326.el7_9.3 for package: glibc-2.17-326.el7_9.3.i686 –> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.17-326.el7_9.3.i686 –> Processing Dependency: libfreebl3.so for package: glibc-2.17-326.el7_9.3.i686 —> Package java-1.8.0-openjdk-devel.x86_64 1:1.8.0.412.b08-1.el7_9 will be installed –> Processing Dependency: java-1.8.0-openjdk(x86-64) = 1:1.8.0.412.b08-1.el7_9 for package: 1:java-1.8.0-openjdk-devel-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libjvm.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libjava.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libX11.so.6()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.412.b08-1.el7_9.x86_64 —> Package net-tools.x86_64 0:2.0-0.25.20131004git.el7 will be installed —> Package vim-enhanced.x86_64 2:7.4.629-8.el7_9 will be installed –> Processing Dependency: vim-common = 2:7.4.629-8.el7_9 for package: 2:vim-enhanced-7.4.629-8.el7_9.x86_64 –> Processing Dependency: which for package: 2:vim-enhanced-7.4.629-8.el7_9.x86_64 –> Processing Dependency: perl(:MODULE_COMPAT_5.16.3) for package: 2:vim-enhanced-7.4.629-8.el7_9.x86_64 –> Processing Dependency: libperl.so()(64bit) for package: 2:vim-enhanced-7.4.629-8.el7_9.x86_64 –> Processing Dependency: libgpm.so.2()(64bit) for package: 2:vim-enhanced-7.4.629-8.el7_9.x86_64 –> Running transaction check —> Package glibc-common.x86_64 0:2.17-317.el7 will be updated –> Processing Dependency: glibc-common = 2.17-317.el7 for package: glibc-2.17-317.el7.x86_64 —> Package glibc-common.x86_64 0:2.17-326.el7_9.3 will be an update —> Package gpm-libs.x86_64 0:1.20.7-6.el7 will be installed —> Package java-1.8.0-openjdk.x86_64 1:1.8.0.412.b08-1.el7_9 will be installed –> Processing Dependency: xorg-x11-fonts-Type1 for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libpng15.so.15(PNG15_0)(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libjpeg.so.62(LIBJPEG_6.2)(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libasound.so.2(ALSA_0.9.0rc4)(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libasound.so.2(ALSA_0.9)(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libXcomposite(x86-64) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: gtk2(x86-64) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: fontconfig(x86-64) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libpng15.so.15()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libjpeg.so.62()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libgif.so.4()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libasound.so.2()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libXtst.so.6()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libXrender.so.1()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libXi.so.6()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libXext.so.6()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 —> Package java-1.8.0-openjdk-headless.x86_64 1:1.8.0.412.b08-1.el7_9 will be installed –> Processing Dependency: tzdata-java >= 2023d for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: copy-jdk-configs >= 3.3 for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: pcsc-lite-libs(x86-64) for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: lksctp-tools(x86-64) for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: jpackage-utils for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: cups-libs(x86-64) for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 –> Processing Dependency: libfreetype.so.6()(64bit) for package: 1:java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 —> Package libX11.x86_64 0:1.6.7-5.el7_9 will be installed –> Processing Dependency: libX11-common >= 1.6.7-5.el7_9 for package: libX11-1.6.7-5.el7_9.x86_64 –> Processing Dependency: libxcb.so.1()(64bit) for package: libX11-1.6.7-5.el7_9.x86_64 —> Package nss-softokn-freebl.x86_64 0:3.53.1-6.el7_9 will be updated —> Package nss-softokn-freebl.i686 0:3.90.0-6.el7_9 will be installed –> Processing Dependency: nss-util >= 3.90.0-1 for package: nss-softokn-freebl-3.90.0-6.el7_9.i686 –> Processing Dependency: nspr >= 4.35.0 for package: nss-softokn-freebl-3.90.0-6.el7_9.i686 —> Package nss-softokn-freebl.x86_64 0:3.90.0-6.el7_9 will be an update —> Package perl.x86_64 4:5.16.3-299.el7_9 will be installed –> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl-macros for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Getopt::Long) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(File::Temp) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(File::Spec::Unix) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(File::Spec::Functions) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(File::Spec) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(File::Path) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Exporter) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Cwd) for package: 4:perl-5.16.3-299.el7_9.x86_64 –> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-299.el7_9.x86_64 —> Package perl-libs.x86_64 4:5.16.3-299.el7_9 will be installed —> Package vim-common.x86_64 2:7.4.629-8.el7_9 will be installed –> Processing Dependency: vim-filesystem for package: 2:vim-common-7.4.629-8.el7_9.x86_64 —> Package which.x86_64 0:2.20-7.el7 will be installed –> Running transaction check —> Package alsa-lib.x86_64 0:1.1.8-1.el7 will be installed —> Package copy-jdk-configs.noarch 0:3.3-11.el7_9 will be installed —> Package cups-libs.x86_64 1:1.6.3-52.el7_9 will be installed –> Processing Dependency: libavahi-common.so.3()(64bit) for package: 1:cups-libs-1.6.3-52.el7_9.x86_64 –> Processing Dependency: libavahi-client.so.3()(64bit) for package: 1:cups-libs-1.6.3-52.el7_9.x86_64 —> Package fontconfig.x86_64 0:2.13.0-4.3.el7 will be installed –> Processing Dependency: fontpackages-filesystem for package: fontconfig-2.13.0-4.3.el7.x86_64 –> Processing Dependency: dejavu-sans-fonts for package: fontconfig-2.13.0-4.3.el7.x86_64 —> Package freetype.x86_64 0:2.8-14.el7_9.1 will be installed —> Package giflib.x86_64 0:4.1.6-9.el7 will be installed –> Processing Dependency: libSM.so.6()(64bit) for package: giflib-4.1.6-9.el7.x86_64 –> Processing Dependency: libICE.so.6()(64bit) for package: giflib-4.1.6-9.el7.x86_64 —> Package glibc.x86_64 0:2.17-317.el7 will be updated —> Package glibc.x86_64 0:2.17-326.el7_9.3 will be an update —> Package gtk2.x86_64 0:2.24.31-1.el7 will be installed –> Processing Dependency: pango >= 1.20.0-1 for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libtiff >= 3.6.1 for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXrandr >= 1.2.99.4-2 for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: atk >= 1.29.4-2 for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: hicolor-icon-theme for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: gtk-update-icon-cache for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libpangoft2-1.0.so.0()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libpangocairo-1.0.so.0()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libpango-1.0.so.0()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libgdk_pixbuf-2.0.so.0()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libcairo.so.2()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libatk-1.0.so.0()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXrandr.so.2()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXinerama.so.1()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXfixes.so.3()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXdamage.so.1()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 –> Processing Dependency: libXcursor.so.1()(64bit) for package: gtk2-2.24.31-1.el7.x86_64 —> Package javapackages-tools.noarch 0:3.4.1-11.el7 will be installed –> Processing Dependency: python-javapackages = 3.4.1-11.el7 for package: javapackages-tools-3.4.1-11.el7.noarch –> Processing Dependency: libxslt for package: javapackages-tools-3.4.1-11.el7.noarch —> Package libX11-common.noarch 0:1.6.7-5.el7_9 will be installed —> Package libXcomposite.x86_64 0:0.4.4-4.1.el7 will be installed —> Package libXext.x86_64 0:1.3.3-3.el7 will be installed —> Package libXi.x86_64 0:1.7.9-1.el7 will be installed —> Package libXrender.x86_64 0:0.9.10-1.el7 will be installed —> Package libXtst.x86_64 0:1.2.3-1.el7 will be installed —> Package libjpeg-turbo.x86_64 0:1.2.90-8.el7 will be installed —> Package libpng.x86_64 2:1.5.13-8.el7 will be installed —> Package libxcb.x86_64 0:1.13-1.el7 will be installed –> Processing Dependency: libXau.so.6()(64bit) for package: libxcb-1.13-1.el7.x86_64 —> Package lksctp-tools.x86_64 0:1.0.17-2.el7 will be installed —> Package nspr.x86_64 0:4.25.0-2.el7_9 will be updated —> Package nspr.x86_64 0:4.35.0-1.el7_9 will be an update —> Package nss-util.x86_64 0:3.53.1-1.el7_9 will be updated —> Package nss-util.x86_64 0:3.90.0-1.el7_9 will be an update —> Package pcsc-lite-libs.x86_64 0:1.8.8-8.el7 will be installed —> Package perl-Carp.noarch 0:1.26-244.el7 will be installed —> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed —> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed —> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed —> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed —> Package perl-Getopt-Long.noarch 0:2.40-3.el7 will be installed –> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-3.el7.noarch –> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-3.el7.noarch —> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed —> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed –> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch –> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch —> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed —> Package perl-Socket.x86_64 0:2.010-5.el7 will be installed —> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed —> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed —> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed —> Package perl-constant.noarch 0:1.27-2.el7 will be installed —> Package perl-macros.x86_64 4:5.16.3-299.el7_9 will be installed —> Package perl-threads.x86_64 0:1.87-4.el7 will be installed —> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed —> Package tzdata-java.noarch 0:2024a-1.el7 will be installed —> Package vim-filesystem.x86_64 2:7.4.629-8.el7_9 will be installed —> Package xorg-x11-fonts-Type1.noarch 0:7.5-9.el7 will be installed –> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.5-9.el7.noarch –> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.5-9.el7.noarch –> Processing Dependency: mkfontdir for package: xorg-x11-fonts-Type1-7.5-9.el7.noarch –> Processing Dependency: mkfontdir for package: xorg-x11-fonts-Type1-7.5-9.el7.noarch –> Running transaction check —> Package atk.x86_64 0:2.28.1-2.el7 will be installed —> Package avahi-libs.x86_64 0:0.6.31-20.el7 will be installed —> Package cairo.x86_64 0:1.15.12-4.el7 will be installed –> Processing Dependency: libpixman-1.so.0()(64bit) for package: cairo-1.15.12-4.el7.x86_64 –> Processing Dependency: libGL.so.1()(64bit) for package: cairo-1.15.12-4.el7.x86_64 –> Processing Dependency: libEGL.so.1()(64bit) for package: cairo-1.15.12-4.el7.x86_64 —> Package dejavu-sans-fonts.noarch 0:2.33-6.el7 will be installed –> Processing Dependency: dejavu-fonts-common = 2.33-6.el7 for package: dejavu-sans-fonts-2.33-6.el7.noarch —> Package fontpackages-filesystem.noarch 0:1.44-8.el7 will be installed —> Package gdk-pixbuf2.x86_64 0:2.36.12-3.el7 will be installed –> Processing Dependency: libjasper.so.1()(64bit) for package: gdk-pixbuf2-2.36.12-3.el7.x86_64 —> Package gtk-update-icon-cache.x86_64 0:3.22.30-8.el7_9 will be installed —> Package hicolor-icon-theme.noarch 0:0.12-7.el7 will be installed —> Package libICE.x86_64 0:1.0.9-9.el7 will be installed —> Package libSM.x86_64 0:1.2.2-2.el7 will be installed —> Package libXau.x86_64 0:1.0.8-2.1.el7 will be installed —> Package libXcursor.x86_64 0:1.1.15-1.el7 will be installed —> Package libXdamage.x86_64 0:1.1.4-4.1.el7 will be installed —> Package libXfixes.x86_64 0:5.0.3-1.el7 will be installed —> Package libXinerama.x86_64 0:1.1.3-2.1.el7 will be installed —> Package libXrandr.x86_64 0:1.5.1-2.el7 will be installed —> Package libtiff.x86_64 0:4.0.3-35.el7 will be installed –> Processing Dependency: libjbig.so.2.0()(64bit) for package: libtiff-4.0.3-35.el7.x86_64 —> Package libxslt.x86_64 0:1.1.28-6.el7 will be installed —> Package pango.x86_64 0:1.42.4-4.el7_7 will be installed –> Processing Dependency: libthai(x86-64) >= 0.1.9 for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libXft(x86-64) >= 2.0.0 for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: harfbuzz(x86-64) >= 1.4.2 for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: fribidi(x86-64) >= 1.0 for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libthai.so.0(LIBTHAI_0.1)(64bit) for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libthai.so.0()(64bit) for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libharfbuzz.so.0()(64bit) for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libfribidi.so.0()(64bit) for package: pango-1.42.4-4.el7_7.x86_64 –> Processing Dependency: libXft.so.2()(64bit) for package: pango-1.42.4-4.el7_7.x86_64 —> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed —> Package perl-Pod-Escapes.noarch 1:1.04-299.el7_9 will be installed —> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed –> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch –> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch —> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed —> Package python-javapackages.noarch 0:3.4.1-11.el7 will be installed –> Processing Dependency: python-lxml for package: python-javapackages-3.4.1-11.el7.noarch —> Package ttmkfdir.x86_64 0:3.0.9-42.el7 will be installed —> Package xorg-x11-font-utils.x86_64 1:7.5-21.el7 will be installed –> Processing Dependency: libfontenc.so.1()(64bit) for package: 1:xorg-x11-font-utils-7.5-21.el7.x86_64 –> Running transaction check —> Package dejavu-fonts-common.noarch 0:2.33-6.el7 will be installed —> Package fribidi.x86_64 0:1.0.2-1.el7_7.1 will be installed —> Package harfbuzz.x86_64 0:1.7.5-2.el7 will be installed –> Processing Dependency: libgraphite2.so.3()(64bit) for package: harfbuzz-1.7.5-2.el7.x86_64 —> Package jasper-libs.x86_64 0:1.900.1-33.el7 will be installed —> Package jbigkit-libs.x86_64 0:2.0-11.el7 will be installed —> Package libXft.x86_64 0:2.3.2-2.el7 will be installed —> Package libfontenc.x86_64 0:1.1.3-3.el7 will be installed —> Package libglvnd-egl.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed –> Processing Dependency: libglvnd(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7 for package: 1:libglvnd-egl-1.0.1-0.8.git5baa1e5.el7.x86_64 –> Processing Dependency: mesa-libEGL(x86-64) >= 13.0.4-1 for package: 1:libglvnd-egl-1.0.1-0.8.git5baa1e5.el7.x86_64 –> Processing Dependency: libGLdispatch.so.0()(64bit) for package: 1:libglvnd-egl-1.0.1-0.8.git5baa1e5.el7.x86_64 —> Package libglvnd-glx.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed –> Processing Dependency: mesa-libGL(x86-64) >= 13.0.4-1 for package: 1:libglvnd-glx-1.0.1-0.8.git5baa1e5.el7.x86_64 —> Package libthai.x86_64 0:0.1.14-9.el7 will be installed —> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed –> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch –> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch –> Processing Dependency: groff-base for package: perl-Pod-Perldoc-3.20-4.el7.noarch —> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed —> Package pixman.x86_64 0:0.34.0-1.el7 will be installed —> Package python-lxml.x86_64 0:3.2.1-4.el7 will be installed –> Running transaction check —> Package graphite2.x86_64 0:1.3.10-1.el7_3 will be installed —> Package groff-base.x86_64 0:1.22.2-8.el7 will be installed —> Package libglvnd.x86_64 1:1.0.1-0.8.git5baa1e5.el7 will be installed —> Package mesa-libEGL.x86_64 0:18.3.4-12.el7_9 will be installed –> Processing Dependency: mesa-libgbm = 18.3.4-12.el7_9 for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libxshmfence.so.1()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libwayland-server.so.0()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libwayland-client.so.0()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libglapi.so.0()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libgbm.so.1()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 –> Processing Dependency: libdrm.so.2()(64bit) for package: mesa-libEGL-18.3.4-12.el7_9.x86_64 —> Package mesa-libGL.x86_64 0:18.3.4-12.el7_9 will be installed –> Processing Dependency: libXxf86vm.so.1()(64bit) for package: mesa-libGL-18.3.4-12.el7_9.x86_64 —> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed —> Package perl-parent.noarch 1:0.225-244.el7 will be installed –> Running transaction check —> Package libXxf86vm.x86_64 0:1.1.4-1.el7 will be installed —> Package libdrm.x86_64 0:2.4.97-2.el7 will be installed –> Processing Dependency: libpciaccess.so.0()(64bit) for package: libdrm-2.4.97-2.el7.x86_64 —> Package libwayland-client.x86_64 0:1.15.0-1.el7 will be installed —> Package libwayland-server.x86_64 0:1.15.0-1.el7 will be installed —> Package libxshmfence.x86_64 0:1.2-1.el7 will be installed —> Package mesa-libgbm.x86_64 0:18.3.4-12.el7_9 will be installed —> Package mesa-libglapi.x86_64 0:18.3.4-12.el7_9 will be installed –> Running transaction check —> Package libpciaccess.x86_64 0:0.14-1.el7 will be installed –> Processing Dependency: hwdata for package: libpciaccess-0.14-1.el7.x86_64 –> Running transaction check —> Package hwdata.x86_64 0:0.252-9.7.el7 will be installed –> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size Installing: glibc i686 2.17-326.el7_9.3 updates 4.3 M java-1.8.0-openjdk-devel x86_64 1:1.8.0.412.b08-1.el7_9 updates 9.9 M net-tools x86_64 2.0-0.25.20131004git.el7 base 306 k vim-enhanced x86_64 2:7.4.629-8.el7_9 updates 1.1 M Installing for dependencies: alsa-lib x86_64 1.1.8-1.el7 base 425 k atk x86_64 2.28.1-2.el7 base 263 k avahi-libs x86_64 0.6.31-20.el7 base 62 k cairo x86_64 1.15.12-4.el7 base 741 k copy-jdk-configs noarch 3.3-11.el7_9 updates 22 k cups-libs x86_64 1:1.6.3-52.el7_9 updates 359 k dejavu-fonts-common noarch 2.33-6.el7 base 64 k dejavu-sans-fonts noarch 2.33-6.el7 base 1.4 M fontconfig x86_64 2.13.0-4.3.el7 base 254 k fontpackages-filesystem noarch 1.44-8.el7 base 9.9 k freetype x86_64 2.8-14.el7_9.1 updates 380 k fribidi x86_64 1.0.2-1.el7_7.1 base 79 k gdk-pixbuf2 x86_64 2.36.12-3.el7 base 570 k giflib x86_64 4.1.6-9.el7 base 40 k gpm-libs x86_64 1.20.7-6.el7 base 32 k graphite2 x86_64 1.3.10-1.el7_3 base 115 k groff-base x86_64 1.22.2-8.el7 base 942 k gtk-update-icon-cache x86_64 3.22.30-8.el7_9 updates 27 k gtk2 x86_64 2.24.31-1.el7 base 3.4 M harfbuzz x86_64 1.7.5-2.el7 base 267 k hicolor-icon-theme noarch 0.12-7.el7 base 42 k hwdata x86_64 0.252-9.7.el7 base 2.5 M jasper-libs x86_64 1.900.1-33.el7 base 150 k java-1.8.0-openjdk x86_64 1:1.8.0.412.b08-1.el7_9 updates 325 k java-1.8.0-openjdk-headless x86_64 1:1.8.0.412.b08-1.el7_9 updates 33 M javapackages-tools noarch 3.4.1-11.el7 base 73 k jbigkit-libs x86_64 2.0-11.el7 base 46 k libICE x86_64 1.0.9-9.el7 base 66 k libSM x86_64 1.2.2-2.el7 base 39 k libX11 x86_64 1.6.7-5.el7_9 updates 607 k libX11-common noarch 1.6.7-5.el7_9 updates 165 k libXau x86_64 1.0.8-2.1.el7 base 29 k libXcomposite x86_64 0.4.4-4.1.el7 base 22 k libXcursor x86_64 1.1.15-1.el7 base 30 k libXdamage x86_64 1.1.4-4.1.el7 base 20 k libXext x86_64 1.3.3-3.el7 base 39 k libXfixes x86_64 5.0.3-1.el7 base 18 k libXft x86_64 2.3.2-2.el7 base 58 k libXi x86_64 1.7.9-1.el7 base 40 k libXinerama x86_64 1.1.3-2.1.el7 base 14 k libXrandr x86_64 1.5.1-2.el7 base 27 k libXrender x86_64 0.9.10-1.el7 base 26 k libXtst x86_64 1.2.3-1.el7 base 20 k libXxf86vm x86_64 1.1.4-1.el7 base 18 k libdrm x86_64 2.4.97-2.el7 base 151 k libfontenc x86_64 1.1.3-3.el7 base 31 k libglvnd x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 89 k libglvnd-egl x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 44 k libglvnd-glx x86_64 1:1.0.1-0.8.git5baa1e5.el7 base 125 k libjpeg-turbo x86_64 1.2.90-8.el7 base 135 k libpciaccess x86_64 0.14-1.el7 base 26 k libpng x86_64 2:1.5.13-8.el7 base 213 k libthai x86_64 0.1.14-9.el7 base 187 k libtiff x86_64 4.0.3-35.el7 base 172 k libwayland-client x86_64 1.15.0-1.el7 base 33 k libwayland-server x86_64 1.15.0-1.el7 base 39 k libxcb x86_64 1.13-1.el7 base 214 k libxshmfence x86_64 1.2-1.el7 base 7.2 k libxslt x86_64 1.1.28-6.el7 base 242 k lksctp-tools x86_64 1.0.17-2.el7 base 88 k mesa-libEGL x86_64 18.3.4-12.el7_9 updates 110 k mesa-libGL x86_64 18.3.4-12.el7_9 updates 166 k mesa-libgbm x86_64 18.3.4-12.el7_9 updates 39 k mesa-libglapi x86_64 18.3.4-12.el7_9 updates 46 k nss-softokn-freebl i686 3.90.0-6.el7_9 updates 327 k pango x86_64 1.42.4-4.el7_7 base 280 k pcsc-lite-libs x86_64 1.8.8-8.el7 base 34 k perl x86_64 4:5.16.3-299.el7_9 updates 8.0 M perl-Carp noarch 1.26-244.el7 base 19 k perl-Encode x86_64 2.51-7.el7 base 1.5 M perl-Exporter noarch 5.68-3.el7 base 28 k perl-File-Path noarch 2.09-2.el7 base 26 k perl-File-Temp noarch 0.23.01-3.el7 base 56 k perl-Filter x86_64 1.49-3.el7 base 76 k perl-Getopt-Long noarch 2.40-3.el7 base 56 k perl-HTTP-Tiny noarch 0.033-3.el7 base 38 k perl-PathTools x86_64 3.40-5.el7 base 82 k perl-Pod-Escapes noarch 1:1.04-299.el7_9 updates 52 k perl-Pod-Perldoc noarch 3.20-4.el7 base 87 k perl-Pod-Simple noarch 1:3.28-4.el7 base 216 k perl-Pod-Usage noarch 1.63-3.el7 base 27 k perl-Scalar-List-Utils x86_64 1.27-248.el7 base 36 k perl-Socket x86_64 2.010-5.el7 base 49 k perl-Storable x86_64 2.45-3.el7 base 77 k perl-Text-ParseWords noarch 3.29-4.el7 base 14 k perl-Time-HiRes x86_64 4:1.9725-3.el7 base 45 k perl-Time-Local noarch 1.2300-2.el7 base 24 k perl-constant noarch 1.27-2.el7 base 19 k perl-libs x86_64 4:5.16.3-299.el7_9 updates 690 k perl-macros x86_64 4:5.16.3-299.el7_9 updates 44 k perl-parent noarch 1:0.225-244.el7 base 12 k perl-podlators noarch 2.5.1-3.el7 base 112 k perl-threads x86_64 1.87-4.el7 base 49 k perl-threads-shared x86_64 1.43-6.el7 base 39 k pixman x86_64 0.34.0-1.el7 base 248 k python-javapackages noarch 3.4.1-11.el7 base 31 k python-lxml x86_64 3.2.1-4.el7 base 758 k ttmkfdir x86_64 3.0.9-42.el7 base 48 k tzdata-java noarch 2024a-1.el7 updates 187 k vim-common x86_64 2:7.4.629-8.el7_9 updates 5.9 M vim-filesystem x86_64 2:7.4.629-8.el7_9 updates 11 k which x86_64 2.20-7.el7 base 41 k xorg-x11-font-utils x86_64 1:7.5-21.el7 base 104 k xorg-x11-fonts-Type1 noarch 7.5-9.el7 base 521 k Updating for dependencies: glibc x86_64 2.17-326.el7_9.3 updates 3.6 M glibc-common x86_64 2.17-326.el7_9.3 updates 12 M nspr x86_64 4.35.0-1.el7_9 updates 128 k nss-softokn-freebl x86_64 3.90.0-6.el7_9 updates 321 k nss-util x86_64 3.90.0-1.el7_9 updates 80 k Transaction Summary Install 4 Packages (+104 Dependent packages) Upgrade ( 5 Dependent packages) Total download size: 100 M Downloading packages: Delta RPMs disabled because /usr/bin/applydeltarpm not installed. warning: /var/cache/yum/x86_64/7/base/packages/alsa-lib-1.1.8-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY Public key for alsa-lib-1.1.8-1.el7.x86_64.rpm is not installed Public key for cups-libs-1.6.3-52.el7_9.x86_64.rpm is not installed http://mirrors.aliyun.com/centos/7/updates/x86_64/Packages/copy-jdk-configs-3.3-11.el7_9.noarch.rpm: [Errno 14] curl#6 - “Could not resolve host: mirrors.aliyun.com; Unknown error” Trying other mirror. http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/gtk2-2.24.31-1.el7.x86_64.rpm: [Errno 14] curl#6 - “Could not resolve host: mirrors.aliyun.com; Unknown error” Trying other mirror. http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/javapackages-tools-3.4.1-11.el7.noarch.rpm: [Errno 14] curl#6 - “Could not resolve host: mirrors.aliyun.com; Unknown error” Trying other mirror. Error downloading packages: gtk2-2.24.31-1.el7.x86_64: [Errno 256] No more mirrors to try. javapackages-tools-3.4.1-11.el7.noarch: [Errno 256] No more mirrors to try. copy-jdk-configs-3.3-11.el7_9.noarch: [Errno 256] No more mirrors to try. The command ‘/bin/sh -c yum -y install vim net-tools glibc.i686 java-1.8.0-openjdk-devel’ returned a non-zero code: 1还是没解决
最新发布
08-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值