在 64 位 Linux 上将 32 位 rpm 转换为 deb

在 64 位 Linux 上将 32 位 rpm 转换为 deb

我从以下网站下载了 backburner(renderfarm 管理器)这里。我尝试用它转换,sudo alien -cv backburner.rpm但终端打印出

backburner.rpm 适用于体系结构 i386;无法在此系统上构建该软件包

关于此如何在 x64 系统内将 x86 RPM 转换为 x86 DEB?我做到了

sudo alien -g backburner.rpm
cd backburner-dir/
sudo nano debian/control  (change i386 to amd64 )
sudo debian/rules binary

我得到以下输出

dh_testdir
dh_testdir
dh_testroot
dh_prep
dh_installdirs
dh_installdocs
dh_installchangelogs
find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
        xargs -0 -r -i cp -a {} debian/backburner.sw.base
dh_compress
dh_makeshlibs
dh_installdeb
dh_shlibdeps
dpkg-shlibdeps: warning: debian/backburner.sw.base/usr/discreet/backburner/cmdjob contains an unresolvable reference to symbol uuid_generate: it's probably a plugin
dpkg-shlibdeps: warning: 2 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: debian/backburner.sw.base/usr/discreet/backburner/backburnerManager contains an unresolvable reference to symbol uuid_parse: it's probably a plugin
dpkg-shlibdeps: warning: 2 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/backburner.sw.base/usr/discreet/backburner/cmdjob debian/backburner.sw.base/usr/discreet/backburner/backburnerServer debian/backburner.sw.base/usr/discreet/lib32/backburner/2015.0/libDLnrapi.so debian/backburner.sw.base/usr/discreet/backburner/backburnerManager were not linked against libuuid.so.1 (they use none of the library's symbols)
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package `backburner.sw.base' in `../backburner.sw.base_2015.0.1-1689_amd64.deb'.

你们能解释并帮助我理解这些警告吗?

我已经尝试在 debian/control Depends 中添加 libuuid.so.1(带或不带逗号),因此它看起来像

依赖:${shlibs:Depends},libuuid.so.1

作为穆鲁建议我这么做

namei -lx ../backburner.sw.base_2015.0.1-1689_amd64.deb

输出

f: backburner.sw.base_2015.0.1-1689_amd64.deb
-rwxrwxr-x render render backburner.sw.base_2015.0.1-1689_amd64.deb

提前致谢!

答案1

最后我做到了rpm > tgz > deb.但我想那是什么莫希特·拉詹建议可能会有所帮助。我现在认为,即使是 alien -g packagename 和手动安装 - 复制文件也可以。谢谢。

无论如何,知道如何避免此类警告以及如何处理它们都很酷。我只是不想在没有进一步调查的情况下忽略它

答案2

你可以使用 alien,但我不建议这么做。Alien 可以将 RPM 转为 DEB 或将 DEB 转为 RPM,但它不能确保软件包可以毫无问题地安装。

相关内容