centos7.9编译安装libzip-1.9.2 和 cmake 3.26.0
centos7.9编译安装libzip-1.9.2
Zstandard也叫做zstd,是Facebook开源的一种压缩方式,现在越来越多的受到大家的喜爱,在开源数据库Greenplum中,也应用到了这种压缩方式。
它在CentOS等资源的默认yum源中并不存在,不能通过 yum install zstd 的方式一键安装。但是如果您要使用它,安装起来也是比较简单的,请按照以下步骤:
访问 https://github.com/facebook/zstd 在右下角的Releases栏目中选择您想要的版本并下载;
wget -c https://github.com/facebook/zstd/releases/download/v1.5.4/zstd-1.5.4.tar.gz
上传到服务器中,这里我选择linux centos7;
本机安装make;
执行make install安装到系统默认路径;
make && make install
愉快的使用zstd命令。
在编译安装php时系统会报 configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != … 这是因为libzip 版本过低 解决方法如下:
1、卸载以前的版本 ,没有的话也可以不用卸载
yum remove libzip libzip-devel
2、安装cmake3
yum install -y cmake3
//如果找不到包就选择源码安装
cmake源码安装方法(最下面有安装方法)
开始安装libzip
1、去官网下载libzip 想要最新的也可以去https://libzip.org/download/ 或者github寻找
wget -c https://libzip.org/download/libzip-1.9.2.tar.gz
2、解压安装包并创建build目录
tar -zvxf libzip-1.9.2.tar.gz
1.下载
yum remove -y libzip libzip-devel
wget https://libzip.org/download/libzip-1.9.2.tar.gz --no-check-certificate
tar -zxvf libzip-1.9.2.tar.gz
2.编译
mkdir libzip-1.9.2-build
cd libzip-1.9.2-build
cmake ../libzip-1.9.2 --install-prefix /usr/local/libzip-1.9.2
cmake --build .
cmake --install .
cd ..
3.配置
# 设置环境变量
touch /etc/profile.d/libzip.sh
chmod 777 /etc/profile.d/libzip.sh
echo -e '\nexport PATH=/usr/local/libzip-1.9.2/bin:$PATH\nexport PKG_CONFIG_PATH=/usr/local/libzip-1.9.2/lib64/pkgconfig:$PKG_CONFIG_PATH' >> /etc/profile.d/libzip.sh
source /etc/profile.d/libzip.sh
# 设置库文件
touch /etc/ld.so.conf.d/libzip.conf
chmod 777 /etc/ld.so.conf.d/libzip.conf
echo -e "/usr/local/libzip-1.9.2/lib64" >> /etc/ld.so.conf.d/libzip.conf
ldconfig -v
#显示动态连接库
ldconfig -p |grep libzip
注意使用cmake … 的情况是会把libzip 安装到/usr/lib64 请自行了解/usr/local/lib64 和 /usr/lib64 的区别,为了把他安装到/usr/lib64我们选择给他指定目录
//通过命令查看是否生效 二选一
方式1:查单个(推荐) 有的话会提示 -lzip
pkg-config --libs libzip
方式2:列出所有看看有没有libzip
pkg-config --list-all
这样我们就大公告成了
生效方式1:
我们需要设置 pkg_config_path 环境变量方法,先看pkg_config_path的值有没有生效,没有的话就添加接下来查看是不是没有添加path
echo $PKG_CONFIG_PATH
//发现没有返回东西,或者返回的东西没有libzip相关的信息所以我们需要添加path
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib64/pkgconfig
//执行下面代码检查下有没有成功
pkg-config --libs libzip
//得到的回复是有libzip 信息的就代表成功了
-L/usr/local/lib64 -lzip
注意:$PKG_CONFIG_PATH 系统重启或者开启新的shell终端会话会失效,具体原因请自行了解
生效方式2:(推荐)
方法2也是通过设置pkg_config_path 环境变量方法,但是是永久有效,不受重启影响,先看pkg_config_path的值有没有生效,没有的话就添加
echo $PKG_CONFIG_PATH
//发现没有返回东西,或者返回的东西没有libzip相关的信息
给~/.bashrc 的最底部 添加PKG_CONFIG_PATH配置,当然你也可以添加到别的地方无非就是用不同的配置文件 如profile等等在这里就懒得写了,~/.bashrc只是针对用户自己而言,请自行了解 profile和bashrc区别
我是在root 账户下添加的,那么只有这个账户下会生效,如果是别的账户需要使用的话请在别的账户下添加
//编辑bashrc
vi ~/.bashrc
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig:/usr/lib64/pkgconfig:/usr/local/lib64/pkgconfig
export PKG_CONFIG_PATH
//使path 生效
source ~/.bashrc
//重启或执行source ~/.bashrc 都可以使path生效
//再次进入系统我们执行下列操作检查一下有没有成功
pkg-config --libs libzip
//得到的回复是有libzip 信息的就代表成功了,重启的话也不会丢失
-L/usr/local/lib64 -lzip
centos7.9 编译安装cmake 3.26.0
1、先检查并卸载老版本
yum remove cmake
2、准备安装好cmake所需的依赖
yum -y install gcc gcc-c++ openssl openssl-devel tar
3、下载源码
官方地址:
git地址:https://github.com/Kitware/CMake/releases/download/v3.26.0-rc5/cmake-3.26.0-rc5-linux-x86_64.tar.gz
wget -c https://github.com/Kitware/CMake/releases/download/v3.26.0-rc5/cmake-3.26.0-rc5-linux-x86_64.tar.gz
4.解压并进入安装包
tar -zvxf cmake-3.26.0-rc5-linux-x86_64.tar.gz
mv cmake-3.26.0-rc5-linux-x86_64 /usr/local/cmake
cd /usr/local/cmake
4.运行下面命令出错bash: ./bootstrap: No such file or directory
./bootstrap
打开一看自己的文件,果然没这个文件
但是再进入bin目录,看到了cmake文件
在网上看到直接添加bin目录路径到环境变量的方法,我就猜想,是不是解压后已经安装好了,不需要再编译安装,是的,我猜对了。
成功安装
1.解压
2.修改环境变量
[root@admin local]# vim /etc/profile
再打开的文件中添加上自己的路径路径
PATH=/usr/local/cmake/bin:$PATH
export PATH
3.刷新
source /etc/profile
4.查看版本号,成功
cmake --version
cd cmake-3.26.0-rc5-linux-x86_64
下面未验证
编译安装两种方式2选一
1、安装方法1
分别运行下面三段代码
./bootstrap
//编译并安装
make && make install
//安装好后 直接运行cmake -version 看看是否成功
//which cmake 或者 find / -name cmake可以查看cmake在哪里
软链接的话看个人需要是否要建立,可以参考下面,我们不指定安装位置的话,系统会自动把cmake的执行文件放到相应位置,如果系统没有指定的话,为了方便全局使用,你可以自己建一个软链接
2、安装方法2
//指定安装目录为usr/local/cmake
./bootstrap --prefix=/usr/local/cmake --datadir=share/cmake --docdir=doc/cmake
//编译并安装
make && make install
指定 cmake 软链接这样可以在全局使用它,你可以把/usr/local/cmake/bin/cmake 指定到/usr/bin/cmake 或者 /usr/local/bin/cmake, 我们推荐使用/usr/local/bin/cmake,具体的请去百度了解一下/usr/bin 和 usr/local/bin的区别
ln -s /usr/local/cmake/bin/cmake /usr/local/bin/cmake
ln -s /usr/local/cmake/bin/cpack /usr/local/bin/cpack
ln -s /usr/local/cmake/bin/ctest /usr/local/bin/ctest
软链接完成后也就大功告成了!!!
安装php-zlib
1、去官网下载扩展
wget https://pecl.php.net/get/zip-1.21.1.tgz
tar zxvf zip-1.21.1.tgz
cd zip-1.21.1
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
2、生成的模块路径
/usr/local/php/lib/php/extensions/no-debug-non-zts-20220922/zip.so
3、修改php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20220922"
;增加
extension=zip.so
4、修改php.ini文件中output_compression
zlib.output_compression = Off 改为 zlib.output_compression = On;
5、重启apache或php-fpm
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂