网站在线解压,关于做情侣的网站的图片素材,女生学什么专业好,学校网站建设汇报ppt模板Linux运维_Bash脚本_编译安装libGD-2.3.3
Bash (Bourne Again Shell) 是一个解释器#xff0c;负责处理 Unix 系统命令行上的命令。它是由 Brian Fox 编写的免费软件#xff0c;并于 1989 年发布的免费软件#xff0c;作为 Sh (Bourne Shell) 的替代品。
您可以在 Linux 和…Linux运维_Bash脚本_编译安装libGD-2.3.3
Bash (Bourne Again Shell) 是一个解释器负责处理 Unix 系统命令行上的命令。它是由 Brian Fox 编写的免费软件并于 1989 年发布的免费软件作为 Sh (Bourne Shell) 的替代品。
您可以在 Linux 和 MacOS 机器上使用 Bash甚至可以通过适用于 Linux 的 Windows 子系统在 Windows 10 机器上使用。
使用方法
下载源码包:
gperf-3.1.tar.gz
freetype-2.12.0.tar.gz
expat-2.5.0.tar.gz
fontconfig-2.15.0.tar.xz
libpng-1.6.37.tar.gz
jpegsrc.v9.tar.gz
libgd-2.3.3.tar.xz
放于指定路径:
这里 Bash Shell 脚本的全局变量 STORAGE 指定的存放源码包的路径 /home/goufeng 可进行修改。
执行 Bash Shell 脚本:
输入 /[路径名]/[脚本名].sh 即可进行自动编译部署过程中提示输入 (y/n) 输入 y 则进行下一步这样分阶段确认的原因是为了确保能够看到上一个源码编译结果中可能的错误和提示。
完整脚本
#! /bin/bash
# Create By GF 2024-03-01 19:57# --------------------------------------------------
# Install First:
# * GNU-Tools (Contains: pkg-config, m4, autoconf, automake, libtool, gettext, flex, bison, libiconv, make)# ------------------- Dependency -------------------
# Need File: gperf-3.1.tar.gz
# Need File: freetype-2.12.0.tar.gz
# Need File: expat-2.5.0.tar.gz
# Need File: fontconfig-2.15.0.tar.xz
# -------------------- Optional --------------------
# Need File: libpng-1.6.37.tar.gz
# Need File: jpegsrc.v9.tar.gz
# --------------------- libGD ----------------------
# Need File: libgd-2.3.3.tar.xz# ##################################################
STORAGE/home/goufeng# ############################################ Dependency ############################################# Function: 编译安装(Compile Install) gperf-3.1
# ##################################################
function Compile_Install_gperf_3_1() {if [[ ! -d /opt/gperf-3.1 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------echo [Confirm] Compile and Install ( gperf-3.1 )? (y/n)# ..........................................read VERIFY# ..........................................if [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -zxvf $STORAGE/gperf-3.1.tar.gz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/gperf-3.1 ./configure --prefix/opt/gperf-3.1 STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/gperf-3.1/bin/gperf /usr/local/bin/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/gperf-3.1 return 0elseecho [Caution] Path: ( /opt/gperf-3.1 ) Already Exists.# ------------------------------------------return 0fi
}# Function: 编译安装(Compile Install) freetype-2.12.0
# ##################################################
function Compile_Install_freetype_2_12_0() {if [[ ! -d /opt/freetype-2.12.0 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------echo [Confirm] Compile and Install ( freetype-2.12.0 )? (y/n)# ..........................................read VERIFY# ..........................................if [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -zxvf $STORAGE/freetype-2.12.0.tar.gz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/freetype-2.12.0 ./configure --prefix/opt/freetype-2.12.0 STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenrsync -av /opt/freetype-2.12.0/include/ /usr/local/include/rsync -av /opt/freetype-2.12.0/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/freetype-2.12.0 return 0elseecho [Caution] Path: ( /opt/freetype-2.12.0 ) Already Exists.# ------------------------------------------return 0fi
}# Function: 编译安装(Compile Install) expat-2.5.0
# ##################################################
function Compile_Install_expat_2_5_0() {if [[ ! -d /opt/expat-2.5.0 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------read -p [Confirm] Compile and Install ( expat-2.5.0 )? (y/n) VERIFYif [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -zxvf $STORAGE/expat-2.5.0.tar.gz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/expat-2.5.0 ./configure --prefix/opt/expat-2.5.0 STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/expat-2.5.0/bin/xmlwf /usr/local/bin/# ......................................rsync -av /opt/expat-2.5.0/include/ /usr/local/include/rsync -av /opt/expat-2.5.0/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/expat-2.5.0 return 0elseecho [Caution] Path: ( /opt/expat-2.5.0 ) Already Exists.# ------------------------------------------return 0fi
}# Function: 编译安装(Compile Install) fontconfig-2.15.0
# ##################################################
function Compile_Install_fontconfig_2_15_0() {if [[ ! -d /opt/fontconfig-2.15.0 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------echo [Confirm] Compile and Install ( fontconfig-2.15.0 )? (y/n)# ..........................................read VERIFY# ..........................................if [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -xvJf $STORAGE/fontconfig-2.15.0.tar.xz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/fontconfig-2.15.0 ./configure --prefix/opt/fontconfig-2.15.0 \PKG_CONFIG_PATH/usr/local/lib/pkgconfig \STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/fontconfig-2.15.0/bin/* /usr/local/bin/# ......................................rsync -av /opt/fontconfig-2.15.0/include/ /usr/local/include/rsync -av /opt/fontconfig-2.15.0/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/fontconfig-2.15.0 return 0elseecho [Caution] Path: ( /opt/fontconfig-2.15.0 ) Already Exists.# ------------------------------------------return 0fi
}# ############################################# Optional ############################################## Function: 编译安装(Compile Install) libpng-1.6.37
# ##################################################
function Compile_Install_libpng_1_6_37() {if [[ ! -d /opt/libpng-1.6.37 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------echo [Confirm] Compile and Install ( libpng-1.6.37 )? (y/n)# ..........................................read VERIFY# ..........................................if [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -zxvf $STORAGE/libpng-1.6.37.tar.gz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/libpng-1.6.37 ./configure --prefix/opt/libpng-1.6.37 STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/libpng-1.6.37/bin/* /usr/local/bin/# ......................................rsync -av /opt/libpng-1.6.37/include/ /usr/local/include/rsync -av /opt/libpng-1.6.37/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/libpng-1.6.37 return 0elseecho [Caution] Path: ( /opt/libpng-1.6.37 ) Already Exists.# ------------------------------------------return 0fi
}# Function: 编译安装(Compile Install) jpeg-9
# ##################################################
function Compile_Install_jpeg_9() {if [[ ! -d /opt/jpeg-9 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------echo [Confirm] Compile and Install ( jpeg-9 )? (y/n)# ..........................................read VERIFY# ..........................................if [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -zxvf $STORAGE/jpegsrc.v9.tar.gz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/jpeg-9 ./configure --prefix/opt/jpeg-9 STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/jpeg-9/bin/* /usr/local/bin/# ......................................rsync -av /opt/jpeg-9/include/ /usr/local/include/rsync -av /opt/jpeg-9/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/jpeg-9 return 0elseecho [Caution] Path: ( /opt/jpeg-9 ) Already Exists.# ------------------------------------------return 0fi
}# ############################################### libGD ############################################### Function: 构建安装(Build Install) libgd-2.3.3
# ##################################################
function Compile_Install_libgd_2_3_3() {if [[ ! -d /opt/libgd-2.3.3 ]]; thenlocal VERIFYlocal STEP_UNZIPPED0local STEP_CONFIGURED0local STEP_INSTALLED0# ------------------------------------------read -p [Confirm] Compile and Install ( libgd-2.3.3 )? (y/n) VERIFYif [[ $VERIFY ! y ]]; then exit 1; fi# ------------------------------------------tar -xvJf $STORAGE/libgd-2.3.3.tar.xz STEP_UNZIPPED1# ------------------------------------------cd $STORAGE/libgd-2.3.3 ./configure --prefix/opt/libgd-2.3.3 \--with-png/opt/libpng-1.6.37 \--with-freetype/opt/freetype-2.12.0 \--with-fontconfig/opt/fontconfig-2.15.0 \--with-jpeg/opt/jpeg-9 \PKG_CONFIG_PATH/usr/local/lib/pkgconfig \STEP_CONFIGURED1# ------------------------------------------make make install STEP_INSTALLED1# ------------------------------------------if [[ $STEP_INSTALLED 1 ]]; thenln -sf /opt/libgd-2.3.3/bin/* /usr/local/bin/# ......................................rsync -av /opt/libgd-2.3.3/include/ /usr/local/include/rsync -av /opt/libgd-2.3.3/lib/ /usr/local/lib/fi# ------------------------------------------cd $STORAGE rm -rf $STORAGE/libgd-2.3.3 return 0elseecho [Caution] Path: ( /opt/libgd-2.3.3 ) Already Exists.# ------------------------------------------return 0fi
}function main() {# ----------------- Dependency -----------------Compile_Install_gperf_3_1Compile_Install_freetype_2_12_0Compile_Install_expat_2_5_0Compile_Install_fontconfig_2_15_0# ------------------ Optional ------------------Compile_Install_libpng_1_6_37Compile_Install_jpeg_9# ------------------- libGD --------------------Compile_Install_libgd_2_3_3
}main总结
以上就是关于 Linux运维 Bash脚本 编译安装libGD-2.3.3 的全部内容。
更多内容可以访问我的代码仓库:
https://gitee.com/goufeng928/public
https://github.com/goufeng928/public