ふるお〜と!- FullAuto

AI・ロボットが普及しBI(ベーシックインカム)が早急に実現されることを願う元ニートのブログ

ふるお〜と!-FullAuto

Debian Packageを作ってみる[慣れるための基本編]

1.実行ファイル作成

helloworld.cpp

#include <iostream>
 
int main()
{
  std::cout << "HeloWorld!" << std::endl;
  
  return 0;
}

コンパイル

$ g++ helloworld.cpp -o helloworld

2.Debian Package作成

パッケージファイルが入る大元のディレクトリを作成。

$ mkdir HelloWorld

DEBIANディレクトリを作成し、コントロールファイルを作成する。

$ cd HelloWorld
$ mkdir DEBIAN
$ cd DEBIAN
$ touch control

controlファイルに以下を設定項目を書き込む。

Package: HelloWorld
Version: 1.0
Section: custom
Priority: optional
Architecture: all
Essential: no
Installed-Size: 1024
Maintainer: hogehoge.org
Description: Print HelloWorld! on the screen

大元のディレクトリへ戻る。 実際のインストールする場所のディレクトリを再現し、先程作成した実行ファイルを配置する。

$ mkdir usr/bin
$ cp ../helloworld usr/bin/

最終的に以下のようなファイル構成になる。

├ HelloWorld
     ├── DEBIAN
     │      └── control
     └── usr/bin
              └helloworld

大元のディレクトリがあるディレクトリへ移動し、debian packageを作成する。

$ cd ..
$ dpkg-deb --build HelloWorld

Helloworld.debが作成される。
バージョンおよびアーキテクチャを付与する。

$ mv HelloWorld.deb HelloWorld-1.0_amd64.deb

作成したDebian Pakageをインストール

$ sudo dpkg -i HelloWorld-1.0_amd64.deb

/usr/bin/helloworldに実行ファイルが配置される。

$ helloworld
HelloWorld!

こうしてhelloworldコマンドが使えるようになる。

Debian Package をアンインストール

実行ファイルのインストール場所について、Debianは知っている。
単純に以下のコマンドを実行すればオッケー

$ sudo dpkg -r HelloWorld