Linux|centos7|yum和编译安装ImageMagick记录

一,

yum安装imagemagick

imagemagick这个软件是图像文件的处理神器,可以文字转图像以及图像的剪辑等等工作,也是配合人工智能工程的不可或缺的工具,具体的用处和特点就不在这里废话了,有兴趣的百度就行了 

本次是在centos7最小化安装基础上安装此软件,因此,首先需要配置yum源,由于centos7已经算是弃用版本,因此,yum源需要配置centos-valute

wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

以上两个源是阿里云的基础源和epel源,这两个源的作用是安装ImageMagick的时候担心某些依赖没有的话,做一个补充

下面开始配置centos的过期源,过期源里包含有centos7的一些比较不常用的软件,例如这个ImageMagick

查看本机的centos版本:

[root@node2 SPECS]# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)

编写repo文件,文件内容如下,其它centos版本都一样,只是把版本号替换掉就可以了,此源里包含ImageMagick

[ewrew]
name=12321
baseurl=https://mirrors.aliyun.com/centos-vault/7.7.1908/os/x86_64
enable=1
gpgcheck=0

🆗,现在就可以使用yum安装ImageMagick了,命令如下:

yum install ImageMagick -y
###安装完毕后,查看convert命令的版本,验证是否正常安装完毕
[root@node1 ~]# convert --version
Version: ImageMagick 6.9.10-68 Q16 x86_64 2024-01-12 https://imagemagick.org
Copyright: © 1999-2019 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC Modules OpenMP(3.1) 
Delegates (built-in): bzlib cairo fontconfig freetype gslib jng jp2 jpeg lcms ltdl lzma openexr pangocairo png ps rsvg tiff wmf x xml zlib

######注:convert命令 就是magick命令,随之安装的还有import,identify,display等等命令

ImageMagick就这么简单的安装好了!!!!!

二、

编译安装ImageMagick

编译安装也有很多方式,比如,直接源码包经过预编译-编译-安装这样的方式,也有将这三个阶段合并到一起的方式,例如src-rpm的方式,直接编译出rpm文件

第二种方式方便移植,自动化程度高一点,本次将采用src-rpm的方式安装

源码包下载地址:

Index of /archive/linux/SRPMS/releases

这里版本比较多,尽量使用7版本的,反正6.5版本我是没有编译成功

我使用的是ImageMagick-7.0.10-34.src.rpm,这个安装包看起来比较奇怪,带一个src,这里的意思是源码的意思

此包rpm -ivh 后将会自动创建rpmbuild目录,然后进入此目录编译并生成当前版本可用的rpm包,下面是编译步骤

1、

将上面的rpm包上传到服务器上备用,先配置yum源:

wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

2、

安装ImageMagick-7.0.10-34.src.rpm,以创建rpmbuild文件夹,并安装rpmbuild命令

[root@centos7 ~]# rpm -ivh ImageMagick-7.0.10-34.src.rpm 
Updating / installing...1:ImageMagick-7.0.10-34            ################################# [100%]
warning: user cristy does not exist - using root
warning: group cristy does not exist - using root
warning: user cristy does not exist - using root
warning: group cristy does not exist - using root[root@centos7 ~]# ls -al rpmbuild/SPECS/
total 12
drwxr-xr-x 2 root root    30 Feb 28 04:35 .
drwxr-xr-x 4 root root    34 Feb 28 04:35 ..
-rw-rw-r-- 1 root root 11023 Oct  8  2020 ImageMagick.spec[root@centos7 SPECS]# yum install rpm-build -y

ImageMagick.spec 是编译脚本,内容是哪些依赖,如何调用,怎么编译,怎么安装的,这里就不详细讲了 

3、

测试安装看缺少哪些依赖并安装依赖

[root@centos7 SPECS]# rpmbuild -ba ImageMagick.spec 
error: Failed build dependencies:bzip2-devel is needed by ImageMagick-7.0.10-34.x86_64freetype-devel is needed by ImageMagick-7.0.10-34.x86_64libjpeg-devel is needed by ImageMagick-7.0.10-34.x86_64libpng-devel is needed by ImageMagick-7.0.10-34.x86_64libtiff-devel is needed by ImageMagick-7.0.10-34.x86_64giflib-devel is needed by ImageMagick-7.0.10-34.x86_64perl-devel >= 5.8.1 is needed by ImageMagick-7.0.10-34.x86_64perl-generators is needed by ImageMagick-7.0.10-34.x86_64ghostscript-devel is needed by ImageMagick-7.0.10-34.x86_64djvulibre-devel is needed by ImageMagick-7.0.10-34.x86_64libwmf-devel is needed by ImageMagick-7.0.10-34.x86_64libX11-devel is needed by ImageMagick-7.0.10-34.x86_64libXext-devel is needed by ImageMagick-7.0.10-34.x86_64libXt-devel is needed by ImageMagick-7.0.10-34.x86_64lcms2-devel is needed by ImageMagick-7.0.10-34.x86_64libxml2-devel is needed by ImageMagick-7.0.10-34.x86_64librsvg2-devel is needed by ImageMagick-7.0.10-34.x86_64OpenEXR-devel is needed by ImageMagick-7.0.10-34.x86_64fftw-devel is needed by ImageMagick-7.0.10-34.x86_64libwebp-devel is needed by ImageMagick-7.0.10-34.x86_64jbigkit-devel is needed by ImageMagick-7.0.10-34.x86_64openjpeg2-devel >= 2.1.0 is needed by ImageMagick-7.0.10-34.x86_64autoconf is needed by ImageMagick-7.0.10-34.x86_64automake is needed by ImageMagick-7.0.10-34.x86_64libtool-ltdl-devel is needed by ImageMagick-7.0.10-34.x86_64

可以看到缺少的依赖比较多,但有两个比较特殊openjpeg2-devel >= 2.1.0 ,perl-devel >= 5.8.1这两个个依赖对版本有要求,那么这个软件是在centos-valute过期源里面的,因此,添加过期源:

[ewrew]
name=12321
baseurl=https://mirrors.aliyun.com/centos-vault/7.7.1908/os/x86_64
enable=1
gpgcheck=0

开始安装依赖,命令如下:

yum install  bzip2-devel freetype-devel  libjpeg-devel libpng-devel  libtiff-devel giflib-devel perl-devel perl-generators  ghostscript-devel  djvulibre-devel ibwmf-devel libX11-devel libXext-devel libXt-devel   lcms2-devel libxml2-devel OpenEXR-devel fftw-devel libwebp-devel jbigkit-devel openjpeg2-devel autoconf automake libtool-ltdl-devel -y

安装完毕后,在执行上面的命令,可以看到还缺少两个依赖,安装命令如下:

缺少依赖的报错:

[root@centos7 SPECS]# rpmbuild -ba ImageMagick.spec 
error: Failed build dependencies:libwmf-devel is needed by ImageMagick-7.0.10-34.x86_64librsvg2-devel is needed by ImageMagick-7.0.10-34.x86_64

依赖安装命令:

yum install libwmf-devel librsvg2-devel -y


###看看上面两个指定版本的依赖安装情况,可以看到都符合要求了:

[root@centos7 x86_64]# rpm -qa |grep openjpeg2-devel
openjpeg2-devel-2.3.1-3.el7_7.x86_64
[root@centos7 x86_64]# rpm -qa |grep perl-devel
perl-devel-5.16.3-299.el7_9.x86_64

4、

这个最后两个依赖安装完就可以顺畅的执行rpmbuild -ba ImageMagick.spec这个命令了。编译完成的末尾日志如下:

Wrote: /root/rpmbuild/SRPMS/ImageMagick-7.0.10-34.src.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-devel-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-libs-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-djvu-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-doc-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-perl-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-devel-7.0.10-34.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-debuginfo-7.0.10-34.x86_64.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.zyhQ3N
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd ImageMagick-7.0.10-34
+ /usr/bin/rm -rf /root/rpmbuild/BUILDROOT/ImageMagick-7.0.10-34.x86_64
+ exit 0
[root@centos7 SPECS]# echo $?
0

编译成果如下,在RPMS这个目录下:

[root@centos7 SPECS]# cd ../RPMS/x86_64/
[root@centos7 x86_64]# ls
ImageMagick-7.0.10-34.x86_64.rpm      ImageMagick-c++-devel-7.0.10-34.x86_64.rpm  ImageMagick-devel-7.0.10-34.x86_64.rpm  ImageMagick-doc-7.0.10-34.x86_64.rpm   ImageMagick-perl-7.0.10-34.x86_64.rpm
ImageMagick-c++-7.0.10-34.x86_64.rpm  ImageMagick-debuginfo-7.0.10-34.x86_64.rpm  ImageMagick-djvu-7.0.10-34.x86_64.rpm   ImageMagick-libs-7.0.10-34.x86_64.rpm

5、

使用这些rpm包

[root@centos7 x86_64]# yum install ./*

ImageMagick就这么简单的安装完毕了,完结!!!!撒花!!!! 

三、

windows和Linux源码以及简单编译

Windows版本的ImageMagick下载地址:

ImageMagick – Download

Linux的源码包下载地址:

https://github.com/ImageMagick/ImageMagick/releases

源码编译:

编译前的依赖安装如下:

 yum install  bzip2-devel freetype-devel  libjpeg-devel libpng-devel  libtiff-devel giflib-devel perl-devel perl-generators  ghostscript-devel  djvulibre-devel ibwmf-devel libX11-devel libXext-devel libXt-devel   lcms2-devel libxml2-devel OpenEXR-devel fftw-devel libwebp-devel jbigkit-devel openjpeg2-devel autoconf automake libtool-ltdl-devel libzstd-devel zstd autotrace-devel autotrace libzip zlib zlib-devel libtool-ltdl-devel perl perl-devel gcc gcc-c++  libwebp-devel libwebp-tools -y

预编译命令:

进入解压后的目录,新建build目录然后进入build目录执行编译,如果有错找不到原因,可以删空build目录,重新编译


mkdir build
cd build../configure --enable-shared         --disable-static         --with-modules         --with-perl         --with-x         --with-threads         --with-magick_plus_plus         --with-wmf         --with-webp         --with-openexr         --with-gslib         --with-rsvg         --with-xml         --with-perl-options="INSTALLDIRS=vendor %{?perl_prefix} CC='%__cc -L$PWD/MagickCore/.libs' LDDLFLAGS='-shared -L$PWD/MagickCore/.libs'"                  --without-gcc-arch         --with-jbig --with-fftw --with-fpx --with-flif --with-autotrace=yes

预编译的日志,可以看到基本各种图像格式都开启支持了:

Host system type: x86_64-pc-linux-gnu
Build system type: x86_64-pc-linux-gnuOption                              Value
------------------------------------------------------------------------------
Shared libraries    --enable-shared=yes		        yes
Static libraries    --enable-static=no		        no
Module support      --with-modules=yes		        yes
GNU ld              --with-gnu-ld=yes		        yes
OpenMP              --enable-openmp=		        yes
Security policy     --with-security-policy=open	        open
Quantum depth       --with-quantum-depth=16	        16
High Dynamic Range Imagery--enable-hdri=no		        noInstall documentation:				        yesMemory allocation library:JEMalloc          --with-jemalloc=no		        noMTMalloc          --with-mtmalloc=no		        noTCMalloc          --with-tcmalloc=no		        noUMem              --with-umem=no		        noDelegate library configuration:BZLIB             --with-bzlib=yes		        yesAutotrace         --with-autotrace=yes		        noDJVU              --with-djvu=yes		        yesDPS               --with-dps=no		        noFFTW              --with-fftw=yes		        yesFLIF              --with-flif=yes		        noFlashPIX          --with-fpx=yes		        noFontConfig        --with-fontconfig=yes	        yesFreeType          --with-freetype=yes		        yesGhostscript lib   --with-gslib=yes		        yesGraphviz          --with-gvc=yes		        noHEIC              --with-heic=yes		        noJBIG              --with-jbig=yes		        yesJPEG v1           --with-jpeg=yes		        yesLCMS              --with-lcms=yes		        yesLQR               --with-lqr=yes		        noLTDL              --with-ltdl=yes		        yesLZMA              --with-lzma=yes		        yesMagick++          --with-magick-plus-plus=yes	        yesOpenEXR           --with-openexr=yes		        yesOpenJP2           --with-openjp2=yes		        yesPANGO             --with-pango=yes		        yesPERL              --with-perl=yes		        /usr/bin/perlPNG               --with-png=yes		        yesRAQM              --with-raqm=yes		        noRAW               --with-raw=yes		        noRSVG              --with-rsvg=yes		        yesTIFF              --with-tiff=yes		        yesWEBP              --with-webp=yes		        noWMF               --with-wmf=yes		        yesX11               --with-x=yes			        yesXML               --with-xml=yes		        yesZLIB              --with-zlib=yes		        yesZSTD              --with-zstd=yes		        yesDelegate program configuration:GhostPCL          None			        pcl6 (unknown)GhostXPS          None			        gxps (unknown)Ghostscript       None			        gs (unknown)Font configuration:Apple fonts       --with-apple-font-dir=default	Dejavu fonts      --with-dejavu-font-dir=default	noneGhostscript fonts --with-gs-font-dir=default		noneURW-base35 fonts  --with-urw-base35-font-dir=default	/usr/share/fonts/urw-base35/Windows fonts     --with-windows-font-dir=default	none

这个基本没什么好说的,上面提到的依赖都安装好自然就水到渠成了,预编译完成后,make&& make install 就完成了

编译完成的日志如下:

la -rpath /usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filters filters/analyze_la-analyze.lo MagickCore/libMagickCore-7.Q16HDRI.la -lm )
libtool: install: /usr/bin/install -c filters/.libs/analyze.soT /usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filters/analyze.so
libtool: install: /usr/bin/install -c filters/.libs/analyze.lai /usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filters/analyze.la
libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin" ldconfig -n /usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filters
----------------------------------------------------------------------
Libraries have been installed in:/usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filtersIf you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the '-LLIBDIR'
flag during linking and do at least one of the following:- add LIBDIR to the 'LD_LIBRARY_PATH' environment variableduring execution- add LIBDIR to the 'LD_RUN_PATH' environment variableduring linking- use the '-Wl,-rpath -Wl,LIBDIR' linker flag- have your system administrator add LIBDIR to '/etc/ld.so.conf'。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。/usr/bin/install -c -m 644 ../Magick++/lib/Magick++/Blob.h ../Magick++/lib/Magick++/CoderInfo.h ../Magick++/lib/Magick++/Color.h ../Magick++/lib/Magick++/Drawable.h ../Magick++/lib/Magick++/Exception.h ../Magick++/lib/Magick++/Functions.h ../Magick++/lib/Magick++/Geometry.h ../Magick++/lib/Magick++/Image.h ../Magick++/lib/Magick++/Include.h ../Magick++/lib/Magick++/Montage.h ../Magick++/lib/Magick++/Pixels.h ../Magick++/lib/Magick++/ResourceLimits.h ../Magick++/lib/Magick++/SecurityPolicy.h ../Magick++/lib/Magick++/Statistic.h ../Magick++/lib/Magick++/STL.h ../Magick++/lib/Magick++/TypeMetric.h '/usr/local/include/ImageMagick-7/Magick++'/usr/bin/mkdir -p '/usr/local/include/ImageMagick-7'/usr/bin/install -c -m 644 ../Magick++/lib/Magick++.h '/usr/local/include/ImageMagick-7'/usr/bin/mkdir -p '/usr/local/share/man/man1'/usr/bin/install -c -m 644 ../MagickCore/MagickCore-config.1 ../MagickWand/MagickWand-config.1 ../Magick++/bin/Magick++-config.1 utilities/ImageMagick.1 utilities/animate.1 utilities/compare.1 utilities/composite.1 utilities/conjure.1 utilities/convert.1 utilities/display.1 utilities/identify.1 utilities/import.1 utilities/magick.1 utilities/magick-script.1 utilities/mogrify.1 utilities/montage.1 utilities/stream.1 '/usr/local/share/man/man1'/usr/bin/mkdir -p '/usr/local/lib/pkgconfig'/usr/bin/install -c -m 644 MagickCore/ImageMagick.pc MagickCore/ImageMagick-7.Q16HDRI.pc MagickCore/MagickCore.pc MagickCore/MagickCore-7.Q16HDRI.pc MagickWand/MagickWand.pc MagickWand/MagickWand-7.Q16HDRI.pc Magick++/lib/Magick++.pc Magick++/lib/Magick++-7.Q16HDRI.pc '/usr/local/lib/pkgconfig'
make[2]: Leaving directory `/root/ImageMagick-7.1.1-20/build'
make[1]: Leaving directory `/root/ImageMagick-7.1.1-20/build'

编译的时候需要注意,上面提到的预编译里面no不要太多,要不很多功能用不了,最后注意上面日志的提示

Libraries have been installed in:
   /usr/local/lib/ImageMagick-7.1.1/modules-Q16HDRI/filters

这个目录还是加入到/etc/ld.so.conf 文件内,防止一些不清楚的错误

[root@centos7 ~]# ls -al /usr/local/lib/ImageMagick-6.9.13/modules-Q16/filters
total 40
drwxr-xr-x 2 root root    42 Feb 29 06:12 .
drwxr-xr-x 4 root root    35 Feb 29 06:12 ..
-rwxr-xr-x 1 root root  1100 Feb 29 06:12 analyze.la
-rwxr-xr-x 1 root root 35976 Feb 29 06:12 analyze.so

加入ld.so.conf 文件内,防止lib库不正常 

[root@centos7 ~]# echo /usr/local/lib/ImageMagick-6.9.13/modules-Q16/filters >>/etc/ld.so.conf
[root@centos7 ~]# ldconfig 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/709750.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot底层原理

SpringBoot底层原理 一 配置优先级 1.配置方式 Springboot中支持三种配置方式,分别为: application.propertiesapplication.ymlapplication.yaml 2.配置优先级 当存在多份配置文件时,配置文件会按照它们的优先级生效。 优先级从高到底…

Linux中df和du命令

当涉及到在Linux系统中管理磁盘空间时,df和du命令是非常有用的工具。除了基本用法外,它们还具有一些高级用法,可以提供更详细和定制化的磁盘信息。下面是Linux中df和du命令的十个常用的高级用法,附带相应的代码和输出。 df -i - 显…

欧盟网络安全产业分析

文章目录 前言一、欧盟网络安全战略历程二、欧盟网络安全政策法规2.1 《电子识别和信任服务条例》2.2 《支付服务指令(第二版)》2.3 NIS 指令系列三.欧盟主要的网络安全机构3.1 ENISA3.2 欧盟委员会3.3 欧洲数据保护委员会3.4 欧盟成员国自设的网络安全机构四、欧盟网络安全…

蓝桥杯-灌溉

参考了大佬的解题思路&#xff0c;先遍历一次花园&#xff0c;找到所有的水源坐标&#xff0c;把它们存入 “水源坐标清单” 数组内&#xff0c;再读取数组里的水源坐标进行扩散。 #include <iostream> using namespace std; int main() {int n,m,t,r,c,k,ans0,list_i0;…

c# aes加密解密私钥公钥通钥

using System.Security.Cryptography; using System.Text; namespace EncryptTest { internal class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); string 密 EncryptAESBASE64("你…

(每日持续更新)jdk api之OutputStreamWriter基础、应用、实战

博主18年的互联网软件开发经验&#xff0c;从一名程序员小白逐步成为了一名架构师&#xff0c;我想通过平台将经验分享给大家&#xff0c;因此博主每天会在各个大牛网站点赞量超高的博客等寻找该技术栈的资料结合自己的经验&#xff0c;晚上进行用心精简、整理、总结、定稿&…

c++ for 循环语句

循环语句 在C中&#xff0c;有几种循环语句可用于重复执行一段代码&#xff0c;直到满足指定条件为止&#xff0c;主要有 for 循环、while 循环、do-while 循环三种循环语句。三者区别&#xff1a; 循环类型特点for 循环1. 适用于已知循环次数的情况&#xff0c;循环次数事先…

教师资格证相关

文章目录&#xff1a; 一&#xff1a;考试时间 二&#xff1a;考试科目 三&#xff1a;相关网站 四&#xff1a;相关 一&#xff1a;考试时间 教资 笔试 面试笔试报名笔试考试笔试公布面试报名面试时间面试公布上半年1月14日3月12日4月15日4月…

推荐系统经典模型YouTubeDNN代码

文章目录 前言数据预处理部分模型训练预测部分总结与问答 前言 上一篇讲到过YouTubeDNN论文部分内容&#xff0c;但是没有代码部分。最近网上教学视频里看到一段关于YouTubeDNN召回算法的代码&#xff0c;现在我分享一下给大家参考看一下&#xff0c;并附上一些我对代码的理解…

一张图读懂人工智能

一、生成人工智能的概念和应用&#xff0c;以及如何使用大型语言模型进行聊天和创造原创内容。这项技术将会对人类和企业产生深远影响。 计算机获得学习、思考和交流的能力&#xff0c;被称为生成人工智能。生成人工智能可以立即获得人类所有知识的总和&#xff0c;并回答任何…

go语言基础 -- map的定义与使用

map的定义与使用 map声明基础语法map的基本使用map的遍历map切片map排序 map声明基础语法 // map的声明 var xxx_map map[key_type]value_typemap的key可以是基本数据类型&#xff0c;channel&#xff0c;接口&#xff0c;结构体&#xff0c;数组&#xff0c;但不能是slice&am…

leetcode刷题(剑指offer) 47.全排列Ⅱ

47.全排列Ⅱ 给定一个可包含重复数字的序列 nums &#xff0c;按任意顺序 返回所有不重复的全排列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,2] 输出&#xff1a; [[1,1,2],[1,2,1],[2,1,1]]示例 2&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[…

c#委托、lambda、事件

Lambda Lambda表达式是一种匿名函数&#xff0c;Lambda表达式通常以箭头“>”分隔左侧的输入和右侧的输出。 (parameter_list) > { statement_block } parameter_list 是由一个或多个参数组成的逗号分隔列表&#xff0c;每个参数都包括类型和名称&#xff0c;可以为空。…

综合实战(volume and Compose)

"让我&#xff0c;重获新生~" MySQL 灾难恢复 熟练掌握挂载卷的使用&#xff0c;将Mysql的业务数据存储在 外部。 实战思想: 使用 MySQL 5.7 的镜像创建容器并创建一个普通数据卷 "mysql-data"用来保存容器中产生的数据。我们需要容器连接到Mysql服务&a…

TeXiFy IDEA 编译后文献引用为 “[?]“

文章目录 1. 问题描述2. 原因分析3. 解决方案3.1 添加自动化脚本3.2 附录——配置一览表 1. 问题描述 在 IDEA 中使用 TeXiFy IDEA 编译后的文章文献引用是 [?] 2. 原因分析 根据网上教程所生成的目录结构如下&#xff1a; 报错日志&#xff1a; 根据 /out 目录结构&#x…

C++ | 使用正则表达式匹配特定形式的字符串

C | 使用正则表达式匹配特定形式的字符串 在 C 中&#xff0c;可以使用 <regex> 头文件提供的正则表达式库来对特定形式的字符串进行匹配操作。 常用的正则表达式模式语法 普通字符&#xff1a; 普通字符会按照其字面意义进行匹配&#xff0c;例如 a 会匹配字符 a。 转…

【vmware安装群晖】

vmware安装群晖 vmware安装群辉&#xff1a; vmware版本&#xff1a;17pro 下载链接&#xff0c; https://customerconnect.vmware.com/cn/downloads/details?downloadGroupWKST-1751-WIN&productId1376&rPId116859 激活码可自行搜索 教程&#xff1a; https://b…

软考笔记--企业应用集成

在企业信息化建设的过程中&#xff0c;由于缺乏统一规划和总体布局&#xff0c;往往形成多个信息孤岛。信息孤岛试数据的一致性无法得到保证&#xff0c;信息无法共享和反馈&#xff0c;需要重复多次的采集和输入。信息孤岛是企业信息话的一个重要的负面因素&#xff0c;其主要…

C++重新入门-string容器

目录 1.包含头文件 2.创建字符串 3.获取字符串长度 4.字符串拼接 5.字符串比较 相等性比较 大小比较 使用比较函数 6.访问字符串 7.查找子串 8.字符串修改 替换子串 插入字符或子串 删除字符或子串 9.提取子串 10.总结 当谈到C中的字符串时&#xff0c;std::str…

135.乐理基础-半音是小二度吗?全音是大二度吗?三全音

内存参考于&#xff1a;三分钟音乐社 上一个内容&#xff1a;134.乐理基础-音程名字的简写-CSDN博客 上一个内容里练习的答案&#xff1a; 半音可以与小二度划等号吗&#xff1f;全音可以和大二度划等号吗&#xff1f; 严格来说它们是不能划等号的&#xff0c;半音与全音是侧…