Cygwin
去年末に e17 snapshot の cygwin 向け patch をつくった人から出るだろうと思われていた svn の trunk に対する patch が全然出てこないので、しびれを切らして、自分でつくることにした。
以前、diff で見る cygwin 1.5 と 1.7 の違いみたいなエントリを書いた。 社会に出る前に知っておくべき cygwin 1.7 のこと - BOOLEANLABEL あの後に公式サイトにきちんとした変更の一覧が置かれたため、それを訳してみる。 What's new and what changed in …
古くなったため、書き直しました。fd0.hatenablog.jp
VitrualBox に Windows7 をインストールして、さらにそこに cygwin-1.7 をインストールして、いろいろといじってみている。
[追記] 公式文書を訳してみました。 cygwin の 1.5 と 1.7 のパッケージの差分より 1.7 から使えるようになった新機能を中心にざっとまとめておく。*1 *1:タイトルはホッテントリメーカーより
なんか、最終回になりそうな予感。
ぶっちゃけるとデフォルトの cygwin のアイコンのデザインセンスは 20 世紀のものだと思う。
snapshot の更新はあんまりされないため、思い切って svn repository からビルドしようかと思い、wiki を覗いてみた。 http://wiki.enlightenment.org/index.php/E17_User_Guide/Installing_from_Source_Repository
ちょっと前に cygwin の X.Org がようやく X11R7 になり、パッケージの細分化がされたのだが、一部のパッケージに旧パッケージへの依存が残っているせいでインストールで Warning が出て、鬱陶しいことこの上ない状況が続いている。 何とかならないものだろ…
会社の PC にインストールしようと思って、google:cygwin nkf でググッても、自分がつくったバイナリは検索結果に全然出てこない上に、みんな tarball からビルドした話ばかり。さすがにそれはみんなの時間が勿体無いなあと思ったため、検索にひっかかるよう…
最近 gcc4 がリリースされたけど、いまだに X.Org は X11R6 のまま。いつになったら追いつくのだろう。
gcc-4.3.2 が試験的にとはいえ、リリースされたということで新 (というか BINARY HACKS で紹介されている) 機能が使えるかどうか試してみる。 Updated experimental package: gcc4-4.3.2-1
残念なことに V8 の話題に完全に乗り遅れたので、せめて V8 を例に Subversion からソースをチェックアウトして、直接 cygport でパッケージをつくる方法を紹介する。
cygwin の setup.exe が更新されたが、オレオレパッケージを配布する側ではちょっと面倒なことになっている。 Updated: Setup.exe updated to version 2.573.2.3
以前に動かしていた e17 の snapshot/2008-01-25 から新しく 2008-05-19 がリリースされているため、これに追従してみる。
TwitterArchiveFilter を cygwin 上で動かす - すぱいだー日記。 を読んでいて、Ruby でプラットフォーム毎に処理を切り分ける場合の定石ってあるの?と思ったので、調べてみた。
完全にずれたタイミングで言うのもなんですが、ドメインを取得する気はないです。
流行っているみたいなので便乗してみた。 諸君、私は ECMAScript が好きだ - IT戦記
jabanner という日本語が表示可能な banner を cygwin に移植してみた。
cygport は bash で書かれたスクリプトであり、いざ読んでみると中にはいろいろと変数や関数があるため、気になった点について、ざっと書いてみる。ちなみに以下の話で「現時点」と言っているのは cygport-0.3.8 を意味している。
残念ながら cygwin には strcasestr がない。
e17 の起動後に表示されるメッセージからエラーを潰す。
Ecore が終われば、もう e17 の準備は整ったようなものである。
苦難を乗り越え、e17 が cygwin で起動するようになった。
Evas に限った話ではなく、実行時に動的にライブラリをロードするような仕組みを持っているものを cygwin に移植する場合には気をつけないといけないことがある。
evas の次は ecore をビルドする。Ecore は EFL 内で使用頻度の高い処理をまとめた便宜関数を提供するライブラリである。*1 *1:convenience function を便宜関数と訳した。http://wiki.livedoor.jp/yushinhozumi/d/convenience%20function
久々に Enlightenment の snapshot が更新されたので、無謀な移植を再開してみる。*1 *1:http://download.enlightenment.org/snapshots/2008-01-25/
eet の次は evas をビルドする。Evas は Enlightenment の華麗なグラフィックを担当する描画関係のライブラリである。
JavaScript を勉強中に「そういや CUI でちょちょいとやれるインタプリタがないから、せっかく覚えたことを試せないじゃないか。」と思ったので、勢いで SpiderMonkey を cygport 化してみた。\(^o^)/参考にしたのは以下のあたり。 SpiderMonkeyのビルド -…
cygport でデバッグ可能なバイナリをビルドする場合には コンパイル時にデバッグ情報を埋め込む バイナリをストリップしない ことが必要となる。