port2pkgまず、port2pkgのmanを読みます。BUGSが先の苦労を予感させます。今回のターゲットは、ports/astro/gpsdriveです。pkgsrcにも、geography/gpsdriveがあるのですが、古いので新しいのが欲しいのです。portを取ってきます。Portsにアクセスして、CVSWebのところから、tarballを取ってきて、展開します。/usr/pkgsrc/geography/gpsdrive.newとして、変換してみましょう。makepatchsum'.うわ、なんかいっぱいエラーがでましたね。このエラーは、pkglintというチェッカーが出したエラーです。これが出ないようにするところまでいきましょう。Makefile依存関係まずは、Makefileをみます。最近ではDEPENDS=はほとんど使わなくてもよくなりました。buildlink3.mkがあるものは、それをincludeするのが正しいみたいです。pcreもあるので、そうします。Portsのページをみて、依存関係を写していきます。基本的に上とおんなじで、buildlink3.mkがあるものは、include追加、です。本当にこんなにたくさん書くべきなのか悩みますが、とりあえず書きます。"../../mk/bsd.pkg.mk"portsでは、USE_*という変数を使うことが多いみたいですが、pkgsrcでは、これもbuildlink3.mkをincludeするという形になっているものが多いです。上記でincludeで書いたので、書いたものは消していきます。このソフトは、make時にperlとgmakeをつかうみたいです。portsでは(昔のpkgsrcも)、USE_GMAKEとかUSE_PERL5とかを使うのですが、pkgsrcでは、最近、USE_TOOLSを使うようになりました。(pkglintで警告が出てましたね。perlXを使うものは、mk/x11.buildlink3.mkをincludeすればいいみたいです。昔のUSE_X11ですね(たぶん)。"../../mk/x11.buildlink3.mk"libtoolを使うときは、USE_LIBTOOL=yesがいるようです。pkgsrc.txtをgrepしてみるもんです。USE_INC_LIBTOOL_VERとUSE_REINPLACEはよくわかんないので消します。その他astroカテゴリはpkgsrcにはないので、geographyにします。PKGREVISIONはports用の変数で、pkgsrcではいらないので、消します。pkglint曰く、COMMENTはAで始めちゃいけないようです。幸いなことに、前のVer.のパッケージがpkgsrc/geography/gpsdriveにあるので、Makefileをのぞきます。前のVer.はgpsdを分離しているようです。このパッケージでは、今回はそこまで手が回らない?ので、分離しないことにします。CONFLICTSを指定しておきます。USE_LANGUAGEは書いてあると、distccを使う時、幸せになれるみたいです。前のVer.を真似して指定しておきます。YESは、こちらでもいりそうです。わからないときは、他のパッケージをひたすら見て、真似するのが重要です。(というか、それしか手がない。^^;)Makefile以外Makefile以外の部分をみます。ほとんどのパッケージのpatchは、patch-[a-z][a-z]というファイル名です。その流儀にしたがい、なおします。makesumでRMD160も追加します。mpsで再度追加します。DESCRをみると、WWW行があります。これは必要ないので、削除します。署名欄を削るべきかどうかは毎度悩みますが、そのままにしておきます。MESSAGESをみます。RCSタグの行が$NetBSD$じゃないので、なおします。=の数が、75でないといけないみたいなのでなおします。PLISTはあとまわしです。makeしてみるmakeしてみます。気になったので、止めて確認します。configureの11426行目と、configure.acの194行めが変みたいです。(ここだけif文の等号が"=="になっている。)これであっているかどうかわかりませんが、とりあえずパッチをつくります。pkgdiffパッケージの出番です。pkgviとmkpatchesを使います。Debugging"の例の通りで問題ありません。cleanしてmakeをやりなおします。configureの途中のエラーは、出なくなったので、あってたのでしょうか。makeがとまったら、原因を調べて、Makefileを修正したり、パッチを作ったり、これを繰り返して、makeが通るようにします。makeとおったmakeとおりました。installしてみます。installできました。PLISTをこしらえます。print-PLISTです。PLIST.newに書きだし、PLISTと比較します。PLIST.new置き換えても問題ないみたいなので、置き換えます。Debugging"の例の通りで問題ありません。share/applicationsを、PLISTに残すべきかは悩みますが、実害はないので、そのままにしておきます。できたものMakefileは下記のとおり。"../../mk/bsd.pkg.mk"できたパッケージは、http://www.rururu.org/~isihara/gpsdrive.tar.gzにおいときます。MLのみなさま、特に、島岡さんとこにしさんに感謝です。間違いの指摘や、ご意見などは、FrontPageにある連絡先にメールを下さるとうれしいです。HD-HLAN(v2)でDebianを試すマイティーサーバのCentOS5をNetBSDに置き換える方法ConoHaにNetBSDをインストールする方法(旧ConoHa向け)ConoHaでNetBSDのサーバーを建てよう(現ConoHa向け)CentOSでpkgsrcを使う(バイナリーパッケージ編)ServersMan@VPSのCentOSでpkgsrcまいなーびーえすでぃーとものかいpkgsrcめもpkgsrc-wip-jpめもport2pkgを試してみるpkg_rolling-replaceを使ってみよーSolarisでpkgsrcpkgsrcなLinux手っ取り早くpkgsrcとかを使うためのMakefilebcbenchTripwireみたいなものipfilterメモpfメモてっとりばやくNSDバックアップめもWindowsのddみたいな何か。Projectのメモ案内FrontPage..最新の5件2019/4/26ConoHaでNetBSDのサーバーを建てよう2019/4/6FreeStyleWikiのパッチ2019/3/10Keyword2018/8/6Menu2018/6/4ssh-agentが使えるmoshをインストールするServersMan@VPSのCentOSでpkgsrc復刊リクエスト中!httpsでは見えません。httpリダイレクトしかしてくれないので、最近のブラウザではブロックされます。Perl5.026000。