2011年 5月 22日 はてなブックマーク -
タグ: #Linux #CentOS #Ruby

Rubyのソースコードをrpmパッケージにする

目的

  • rpmでrubyを管理したい
  • かつ、rubyの最新をrpmで管理したい
  • 新しくspecファイルを作れない(作るのが面倒だ)
  • 面倒なので、すでにrpmになっている物のspecファイルを流用して最新のrpmファイルを作っちゃおう

必要なもの

手順

  • rpmbuild インストール
    yum -y install rpmbuild
    
  • rpm-build用の作業フォルダを作成
    rmkdir ~/rpm/{BUILD,SRPMS,SPECS,SOURCES,RPMS}
    
  • 現在srpmになっている古いソースファイルを、rpmbuildの作業フォルダ「SRPMS」にコピー
    cp ruby-1.8.6.287-2.fc9.src.rpm ~/rpm/SRPMS
    
  • 古いソースファイルをrpmbuildの作業フォルダに展開
    cd ~/rpm
    rpm -i SRPMS/ruby-1.8.6.287-2.fc9.src.rpm
    
  • ruby.specファイルの修正
    ~/rpm/SPECSにruby.specファイルを編集する
    • rubyverを1.8.7に修正
    • _patchlevelを174に修正
    • Source0: のファイル名を、ruby-1.8.7-p174.tar.gzに修正
    • patch??という定義を削除
    • %setupの直後くらいにあるPatch??というものをすべて削除
      新しい1.8.7のソースを使うので、1.8.6用のパッチはいらないため
  • rpm作成
    cd ~/rpm
    rpmbuild -bb SPECS/ruby.spec
    
  • rpm完成
    ~/rpm/RPMSフォルダの中に完成したものがあるはず
  • rpmファイルのインストール
    cd ~/rpm/RPMS/i386
    rpm -ivh *.rpm
    

Linux関連情報 - Rubyのソースコードをrpmパッケージにする - gendosuの企画開発室

1年前 | | 2011年 5月 22日 | このエントリーを含むはてなブックマーク