Lion で emacs をインストールするとエラーが出る

LionのMacPortsemacs-appをインストールすると、次のようなエラーが出る。

--->  Building emacs-app
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for emacs-app is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_aqua_emacs-app/emacs-app/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>

ググったところ、すでにパッチが出ていた。

#30268 (emacs-app @23.3 fails to build on Lion ("unexec: cannot write section __data")) – MacPorts

手順は次の通り。

  1. cd /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/aqua/emacs-app
  2. https://trac.macports.org/attachment/ticket/30268/patch-Portfile.diffのパッチを当てる
  3. filesの下にhttps://trac.macports.org/attachment/ticket/30268/patch-fix-title-bar.diffhttps://trac.macports.org/attachment/ticket/30268/patch-no-pie.diffを置く
  4. port install emacs-app

追記: MacPortsがアップデートされて、普通にインストールできるようになった。

IDEOSにViettelのSIMを挿す

http://www.asitex.net/archives/182
ベトナムで3Gデータ通信 のぶろぐ/ウェブリブログ

  1. 161に「3G ON」というショートメッセージを送信。
  2. 161からベトナム語でメッセージが届く。よく分からないが、おそらく191に機種名を送れと書いてある。
  3. IDEOSが対応機種に含まれているか不明なので、手で設定する。設定→無線とネットワーク→モバイルネットワーク→アクセスポイント名→Viettel GPRS→APNをv-internetに変更。
  4. 1日単位の定額パッケージに申し込む。191に「MI12」というショートメッセージを送信。
  5. 191からベトナム語でメッセージが届く。よく分からないが、1日12,000ドンで250MBまでとか書いてある。250MBを越えると従量料金になる。
  6. 電源を切って再起動する。

定額パッケージをやめるときは191に「HUY」と送信。

  • 残高確認は、*101#に電話すると、画面に表示される。
  • *102#に電話すると、promotionの金額が表示される。残高ではないので、どれだけ使ったかは分からない。これは国際通話には使えない。

MacPorts で emacs-app に IME patch を当てる

Emacs 23.3 になったが、IME patch は 23.2 用でも問題ないらしい。

InlinePatchForCocoaEmacs - MacEmacsからパッチをダウンロードして展開しておく。

すでに emacs-app をインストールしてある場合は、sudo port uninstall emacs-app しておく。

$ sudo port patch emacs-app
$ cd /opt/local/var/macports/build/*_emacs-app/emacs-app/work/emacs-23.3/
$ sudo patch -s -p0 < ~/Downloads/inline_patch-23.2-beta3/emacs-inline.patch
$ sudo port install emacs-app

Mac の /bin/sh と /bin/bash

/bin/sh と /bin/bash はサイズが微妙に違う。どちらも bash ベースだが、/bin/shUnix Specification に厳密に従っている。具体的には、echo -n は /bin/bash では使えるが、/bin/sh では使えないといった違いがある。

10.5: Fix the echo -n problem in 10.5 - Mac OS X Hints