web-dev-qa-db-ja.com

プリコンパイル済みファイルのdebパッケージを作成するにはどうすればよいですか?

RHELでrpmをパッケージ化する方法は知っていますが、debパッケージ化の経験はほとんどありません。

クロスコンパイラを作成するために、他のOSのライブラリとヘッダーをパッケージ化したいので、コンパイルプロセスは必要ありません。ただし、debパッケージングプロセスは、何らかの種類のMakefileを強制的に書き込みます。

プリコンパイル済みファイルのdebパッケージを作成するにはどうすればよいですか?同僚以外には配布しませんので、あらゆる種類の複雑なdebianパッケージング規則は必要ありません。

これは私のrpm.specファイル用です。ほとんど些細なことです。

%define os some-os
%define rootname sysroot-%{os}
%global debug_package %{nil}
Name: sysroot-some-os
License: UNLICENSED
Version: 0.1
Release: 1
Source: sysroot-some-os.tar.bz2
Summary: Sysroot from some os

BuildArch: noarch
BuildRequires: bzip2

%description
Sysroot from some os

%prep
%setup -q -n %{rootname}

%install
mkdir -p ${RPM_BUILD_ROOT}/opt/cross/%{os}/sysroot
cp -r * ${RPM_BUILD_ROOT}/opt/cross/%{os}/sysroot
chmod -R -x ${RPM_BUILD_ROOT}/opt/cross/%{os}/sysroot

%files
/opt/cross/%{os}/sysroot

%changelog
blabla..

編集:

debian/installがこの問題を解決すると考える人もいるかもしれませんが、ご覧のとおり、このパッケージには多くのファイルがあり、すべてのファイルを書き込むことはお勧めできません。 (.specファイルを見てください。)

1
Byoungchan Lee

はい、Debian Binary Packageを直接作成できます

あなたが必要なのは

  1. packagename/DEBIAN/controlファイル、例:

    Package: linuxstatus
    Version: 1.1-1
    Section: base
    Priority: optional
    Architecture: all
    Depends: bash (>= 2.05a-11), textutils (>= 2.0-12), awk, procps (>= \
    1:2.0.7-8), sed (>= 3.02-8), grep (>= 2.4.2-3), coreutils (>= 5.0-5)
    Maintainer: Chr. Clemens Lee <[email protected]>
    Description: Linux system information
     This script provides a broad overview of different
     system aspects.
    
  2. packagenameフォルダーにある同じインストール構造のファイル

  3. cd ..; dpkg-deb --build packagenameを実行します

リファレンス:Debian Binary Package Building HOWTO

4
user.dz