RHEL9安装pgLoader遇sbcl依赖问题:手动安装后yum-builddep仍失败
RHEL9下解决pgLoader编译时SBCL依赖问题
不用降级系统,降级反而会引入兼容性风险,以下是几种可行的解决方法:
方法一:跳过依赖检查直接编译
既然你已经手动安装并验证了SBCL可用,可以直接跳过yum-builddep的依赖检查,用rpmbuild直接编译,前提是确保其他编译依赖(比如libsqlite3-devel、curl-devel等)已经通过yum安装完成:
sudo rpmbuild -bb pgloader.spec --nodeps
方法二:将手动安装的SBCL转为本地yum仓库包
让yum识别手动安装的SBCL,步骤如下:
- 安装所需工具:
sudo yum install rpmrebuild createrepo - 查看已安装的SBCL版本:
rpm -qa | grep sbcl - 将已安装的SBCL打包为rpm包:
生成的rpm包会保存在当前用户的rpmrebuild -s sbcl-<你的版本号>.x86_64rpmbuild/RPMS/x86_64/目录下 - 创建本地仓库目录并复制rpm包:
sudo mkdir -p /usr/local/repo sudo cp ~/rpmbuild/RPMS/x86_64/sbcl-*.rpm /usr/local/repo/ - 生成仓库元数据:
sudo createrepo /usr/local/repo - 创建本地repo配置文件:
sudo tee /etc/yum.repos.d/local-sbcl.repo <<EOF [local-sbcl] name=Local SBCL Repository baseurl=file:///usr/local/repo enabled=1 gpgcheck=0 EOF - 刷新yum缓存:
之后再执行sudo yum clean all && sudo yum makecachesudo yum-builddep pgloader.spec就能识别到SBCL依赖
方法三:使用预编译二进制包
如果不想编译,可以直接下载pgLoader的预编译二进制包,解压后即可使用,无需处理编译依赖问题。
内容的提问来源于stack exchange,提问作者crookedteeth
相关产品推荐
相关产品推荐

