• 締切済み

rpmコマンドによるインストール

自作のプログラムのバイナリファイルをrpmbuildコマンドでrpmパッケージにして、rpmコマンドでインストールすると、make時のバイナリのサイズと、rpmコマンドによるインストール時でサイズが変わってしまいます。 rpmコマンドでインストールした場合は、バイナリのサイズが変わってしまうものなのでしょうか?

みんなの回答

  • Lean
  • ベストアンサー率72% (435/603)
回答No.1

外しているかもしれませんが、rpmbuildコマンドでrpmパッケージを作成する際、stripコマンドが実行されてバイナリファイルから不要なシンボル等が取り除かれているのではないでしょうか? make時のバイナリとrpmパッケージでインストールされたバイナリ共にfileコマンドを実行してみてください。 おそらく、make時のバイナリの方の表示には「not stripped」があって、rpmパッケージでインストールした方の表示には「stripped」があるのではないでしょうか? ○fileコマンド実行例  (今Linuxで試せる環境がないので、FreeBSD上での実行例ですが) %file ./rpm ./rpm: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped

tomoremo
質問者

補足

回答いただき、ありがとうございます。 rpmbuild時にはmakeを実行しておらず、バイナリそのものをパッケージしています。 もちろん、バイナリは作成時にstripしており、rpmパッケージからインストールしたバイナリもfileコマンドで確認したところ、strippedとなっていました。