Alien удаляет .deb при конвертации из .rpm

Я пытаюсь конвертировать .rpm в .deb, используя иностранца.

sudo alien -k libtetra-1.0.0-2.i386.rpm

Чужой говорит, что:

libtetra-1.0.0-2.i386.deb generated

Но когда я проверяю папку - там просто оригинальный .rpm и нет .deb. Также - я вижу, что на долю секунды в папке находится файл .deb. поэтому он выглядит как инопланетянин, создает .deb и сразу удаляет его.

Я подозреваю, что это может быть из-за того, что я использую 64-битную ОС, а пакет - 32?

Может кто-нибудь объяснить, почему инопланетянин автоматически удаляет .deb?

Очень подробный вывод

    LANG=C rpm -qp --queryformat %{NAME} libtetra-1.0.0-2.i386.rpm
libtetra
    LANG=C rpm -qp --queryformat %{VERSION} libtetra-1.0.0-2.i386.rpm
1.0.0
    LANG=C rpm -qp --queryformat %{RELEASE} libtetra-1.0.0-2.i386.rpm
2
    LANG=C rpm -qp --queryformat %{ARCH} libtetra-1.0.0-2.i386.rpm
i386
    LANG=C rpm -qp --queryformat %{CHANGELOGTEXT} libtetra-1.0.0-2.i386.rpm
- First RPM Package
    LANG=C rpm -qp --queryformat %{SUMMARY} libtetra-1.0.0-2.i386.rpm
Panasonic KX-MC6000 series Printer Driver for Linux.
    LANG=C rpm -qp --queryformat %{DESCRIPTION} libtetra-1.0.0-2.i386.rpm
This software is Panasonic KX-MC6000 series Printer Driver for Linux.
You can print from applications by using CUPS(Common Unix Printing System)
which is the printing system for Linux.
Other functions for KX-MC6000 series are not supported by this software.
    LANG=C rpm -qp --queryformat %{PREFIXES} libtetra-1.0.0-2.i386.rpm
(none)
    LANG=C rpm -qp --queryformat %{POSTIN} libtetra-1.0.0-2.i386.rpm
(none)
    LANG=C rpm -qp --queryformat %{POSTUN} libtetra-1.0.0-2.i386.rpm
(none)
    LANG=C rpm -qp --queryformat %{PREUN} libtetra-1.0.0-2.i386.rpm
(none)
    LANG=C rpm -qp --queryformat %{LICENSE} libtetra-1.0.0-2.i386.rpm
GPL and LGPL (Version2)
    LANG=C rpm -qp --queryformat %{PREIN} libtetra-1.0.0-2.i386.rpm
(none)
    LANG=C rpm -qcp libtetra-1.0.0-2.i386.rpm
    rpm -qpi libtetra-1.0.0-2.i386.rpm
Name        : libtetra                     Relocations: (not relocatable)
Version     : 1.0.0                             Vendor: Panasonic Communications Co., Ltd.
Release     : 2                             Build Date: Tue 27 Apr 2010 05:16:40 AM EDT
Install Date: (not installed)               Build Host: localhost.localdomain
Group       : System Environment/Daemons    Source RPM: libtetra-1.0.0-2.src.rpm
Size        : 31808                            License: GPL and LGPL (Version2)
Signature   : (none)
URL         : http://panasonic.net/pcc/support/fax/world.htm
Summary     : Panasonic KX-MC6000 series Printer Driver for Linux.
Description :
This software is Panasonic KX-MC6000 series Printer Driver for Linux.
You can print from applications by using CUPS(Common Unix Printing System)
which is the printing system for Linux.
Other functions for KX-MC6000 series are not supported by this software.

    LANG=C rpm -qpl libtetra-1.0.0-2.i386.rpm
/usr/lib/libtetra.so
/usr/lib/libtetra.so.1.0.0
    mkdir libtetra-1.0.0
    chmod 755 libtetra-1.0.0
    rpm2cpio libtetra-1.0.0-2.i386.rpm | lzma -t -q > /dev/null 2>&1
    rpm2cpio libtetra-1.0.0-2.i386.rpm | (cd libtetra-1.0.0;  cpio --extract --make-directories --no-absolute-filenames --preserve-modification-time) 2>&1
63 blocks
    chmod 755 libtetra-1.0.0/./
    chmod 755 libtetra-1.0.0/./usr
    chmod 755 libtetra-1.0.0/./usr/lib
    chown 0:0 libtetra-1.0.0//usr/lib/libtetra.so.1.0.0
    chmod 755 libtetra-1.0.0//usr/lib/libtetra.so.1.0.0
    mkdir libtetra-1.0.0/debian
    date -R
Mon, 07 Feb 2011 11:03:58 -0500

    date -R
Mon, 07 Feb 2011 11:03:58 -0500

    chmod 755 libtetra-1.0.0/debian/rules
    debian/rules binary 2>&1
dh_testdir
dh_testdir
dh_testroot
dh_clean -k -d
dh_clean: No packages to build.
dh_installdirs
dh_installdocs
dh_installchangelogs
find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
        xargs -0 -r -i cp -a {} debian/
dh_compress
dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb

libtetra_1.0.0-2_i386.deb generated
    find libtetra-1.0.0 -type d -exec chmod 755 {} ;
    rm -rf libtetra-1.0.0

Разрешение

О, хорошо. Похоже, что это, возможно, ошибка? или я не знаю Я просто установил 32-битную версию Ubuntu в VirtualBox и там конвертировал пакет. Почему-то я не смог конвертировать 32-битный пакет в 64 ОС. и это все.

Если кто-то когда-либо найдет причину такого поведения - плз. пост где-то в комментариях.

Спасибо

7
задан 12 February 2011 в 00:46

2 ответа

Это звучит почти так, как будто Alien запускается с флагом -i:

-i, --install
    Automatically install each generated package, and remove the package
    file after it has been installed.

Тем не менее, из вашего вопроса это не так. Здесь могут быть разные архитектуры. Попробуйте отладить процесс дальше с помощью -v или, если это ничего не даст: --veryverbose. Если вы не можете определить проблему по этим флагам, опубликуйте вывод каждого из них в исходном вопросе.

Наконец, попробуйте установить пакет ia32-libs, в котором на вашей машине размещено много общих 32-битных разделяемых библиотек. Это помогает компилировать и запускать 32-битные программы на 64-битных машинах.

0
ответ дан 12 February 2011 в 00:46

не самый сексуальный трюк, но вы можете сделать следующее:

mv /bin/rm /bin/rm_renamed  
ln -s /bin/echo /bin/rm 
alien --scripts your_rpm.rpm
mv /bin/rm /bin/rm_bad_link 
mv /bin/rm_renamed /bin/rm 
rm /bin/rm_bad_link 
0
ответ дан 12 February 2011 в 00:46

Другие вопросы по тегам:

Похожие вопросы: