创建的 RPM 会因已安装的依赖项而出现错误

问题描述

我正在尝试使用 fpm 从源代码创建 RPM 包。不幸的是,这个包在 RHEL/Centos7 上不存在,所以我必须从头开始构建它。

到目前为止我做了什么:

  • 下载源代码并运行 ./configure --prefix=/usr
  • 创建了另一个文件夹并安装了 DESTDIR=/root/myfolder

现在我正在使用这个命令构建包:

fpm -s dir -t rpm -C /root/myfolder --name libassuan --version 2.5.5

现在,如果我尝试安装该软件包,它会说:

error: Failed dependencies:
        libassuan.so.0()(64bit) is needed by (installed) gpgme-1.3.2-5.el7.x86_64
        libassuan.so.0()(64bit) is needed by (installed) gnupg2-2.0.22-5.el7_5.x86_64
        libassuan.so.0(LIBASSUAN_1.0)(64bit) is needed by (installed) gpgme-1.3.2-5.el7.x86_64
        libassuan.so.0(LIBASSUAN_1.0)(64bit) is needed by (installed) gnupg2-2.0.22-5.el7_5.x86_64

使用 --nodeps 不起作用。如果我通过添加 -d(用于依赖项)在 fpm 命令中指定这 2 个包,它仍然会抱怨依赖项:

Error: Package: gpgme-1.3.2-5.el7.x86_64 (@anaconda)
           Requires: libassuan.so.0(LIBASSUAN_1.0)(64bit)
           Removing: libassuan-2.1.0-3.el7.x86_64 (@anaconda)
               libassuan.so.0(LIBASSUAN_1.0)(64bit)
           Updated By: libassuan-2.5.5-1.x86_64 (/libassuan-2.5.5-1.x86_64)
               Not found

libassuan.so.0 是指向不同文件的符号链接(安装后)

lrwxrwxrwx.  1 root          root              22 May 20 13:32 libgpg-error.so -> libgpg-error.so.0.32.0
lrwxrwxrwx.  1 root          root              22 May 20 13:32 libgpg-error.so.0 -> libgpg-error.so.0.32.0
-rwxr-xr-x.  1 root          root          618632 May 20 13:32 libgpg-error.so.0.32.0

我做错了什么?我错过了什么吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)