2013年10月26日土曜日

Pebble SDKイントール

Pebbleと言う時計のオモチャを調べる機会を得ましたので紹介します。

Pebbleの使い方はあちこちで紹介されていますし、日本語の紹介記事もあるようです。しかし、SDKに関しては見当たらないようです。

SDKはInstalling Pebble SDK on Mac OS Xにあります。比較的読みやすい英語ですが、ほかのプラットフォームと共通化するためにMacで馴染みのある方法とは言いがたいところが散見されます。今回はMac OS X 10.8.5上のXcode 5.0 (5A1413)で試しています。

先のページInstalling Pebble SDK on Mac OS Xには最初に四つの作業手順の概要が書かれています。簡単そうに見えますが、一番手間がかかる作業は2のbで、これだけで半分以上の作業時間を取られます。

解説ではインストール先を~/pebble-devにしており、そのまま従いました。また、インストールのヘルプ フォーラムもあるそうですが、私はお世話になることはありませんでした。以下は、開設の手順に従って気がついたことなどを紹介します。

1. Download and install Pebble SDK
PebbleのサイトDon't have an account? Sign Upボタンでアカウントを作り、SDKのファイルPebbleSDK-1.12.tar.gzを入手します。
ホームにフォルダを作って~/pebble-devと命名し、そこにPebbleSDK-1.12.tar.gzを入れてダブルクリックし、PebbleSDK-1.12というフォルダができたことを確認します。

2. Download and install dependencies for Pebble ARM toolchain
XcodeのPreferencesでDownloadsタブのComponentsタブでCommand Line Toolsの右にあるボタンを押してXcodeのツールをインストールします。

さて、libmpc(GNU Multiprecision library)のインストールですが、ここでhomebrewのインストールが求められています。これは別にまとめましたので、「PebbleのためのHomebrew」の項目を参照してください。

無事にhomebrewがインストールされ、brew doctorも通った…として、次は以下の命令です。
brew install libmpc
ファイルを三つほどダウンロードすると完了しますので、以下のファイルが存在するか確認します。
/usr/local/lib/libmpc.3.dylib

3. Download and install Pebble ARM toolchain
もうひとつファイルをダウンロードします。このファイルはMac OS Xのバージョンによって異なります。ダウンロードしたファイルを~/pebble-devに入れてダブルクリックするとinside ~/pebble-dev/と言うフォルダができます。
私はTerminalでbashシェルを使っていますので、.bash_profileを編集して環境変数PATHに~/pebble-dev/arm-cs-tools/bin:を追加します。解説ページにもあるように、一時的にexportしても良いかもしれません。
以上の作業が終われば、gccのバージョンをチェックし、コンパイルの動作検証します。解説ページにある命令はコピーしてTerminalにペーストすれば実行できます。動作検証では解説にもあるwarningが表示され、a.outが作られました。
今回はBuilding the toolchain from Sourceにあるソースからのビルドは不要でした。

4. Download and install SDK dependencies
この作業はフォントや図の変換などに使うPythonのライブラリのインストールです。Mac OS X 10.8.5では書かれた通りに手順を踏めば良いのですが、c. Install the Python library dependencies:は先の二つの命令と比べて長めのテキストをはき出し、最後は以下のようになります。
Successfully installed Pillow freetype-py sh
Cleaning up...
また、最後のfreetypeのチェックはなにも応答が な け れ ば 正常です。

はてさて、これでようやくHelloWorldのappを試す、用意ができました。

MacとPebble SDKの記事はPebbleのラベルで検索してください。

Pebbleの解説文章

Pebbleの解説文章にはiOSやMac OS Xに関連する部分が書かれていないことが良くあります。ほかのプラットフォームと共通化が目的なのでしょうか?

例えば、最初にBluetoothでPebbleをペアリングする時にPebble.appのインストールを求められますが、同社の説明書にもWebサイトにも記述が見当たりません。私の場合は、機能制限でappのインストールを止めていると、iTunes StoreでそれらしきPebble.appを探す羽目になりました。探すものがPebble.appという名前であると分かっていれば良いのですが、最初なので分かるはずもなく似たような名前のappをいくつか試しました。

MacとPebble SDKの記事はPebbleのラベルで検索してください。

PebbleのためのHomebrew

Pebbleと言う時計のオモチャを調べるために、Homebrewをインストールしました。
http://brew.sh
Homebrewのインストーラは上記URLの一番下にかかれたRubyのスクリプトです。

ところで、ドメインが.sh、なんとナポレオン幽閉で有名なセントヘレナ島(笑)いままでパッケージ管理システムは避けていたのですが、大西洋の孤島程度にはパッケージを閉じ込めてくれるのでしょうか?
少し調べてみると、比較的分かりやすいところにHomebrewはアンインストールの方法が書かれていたので試すことにしました。もちろんTime Machineもありますし…

ruby -e "$(...
インストールのスクリプトは最初にどこを書き換えるかなどを表示します。しかし、問題は利用後のテンポラリ ファイルなどのゴミが妙なところに残ったり、ほかのファイルを書き換えたりしないか?という・・・まぁ、心配し始めると切りがないので、パスワードを入力すると以下の一文で終わりました。
==> Installation successful!
You should run `brew doctor' *before* you install anything.
Now type: brew help

brew doctor
インストール スクリプトがはき出した指示に従ってbrew doctorを実行するとWarningが7つ出てきました。
指示に従って一つ一つ潰していき、適時にbrew doctorを走らせ追加の指示があればそれに従いますと、以下の一文が出てきます。
$ brew doctor
Your system is ready to brew.
これでPebbleのSDKをインストールする準備ができました。

MacとPebble SDKの記事はPebbleのラベルで検索してください。

2013年10月19日土曜日

大量データ消去のハズ・・・

MacのMountain Lionで大小取り混ぜて400G byteほど(のハズ)のデータを消去するのに、半日ほどかかりました。
その間、PowerBook Proのファンは回りっぱなしです。

ファイルシステム(データベース)の更新って、そんなに負荷のかかるタスクか?と思ってActivity Monitor.appでみるとroot権限のmtmd(Mobile Time Machine Daemon: Time Machineのデーモン)とmds(metadata server: Spotlightのデーモン)というプロセスが頑張っていました。

消去前にはFinderが空き領域として200G byte足らずあると表示していたのが、消去後は600G byte以上になりました。しかし、消去に時間がかかりすぎている…気がします。何となく不安なのでDisk Utilityでディスクを調べると、空き領域が200G byteを切っていると表示されます。

やむなく、Disk Utilityで修復すると、Finderも消去前と同じ200G byte足らずしか空き領域がないと表示するようになりました。12時間の作業は無駄?(苦笑)

2013年9月28日土曜日

フォント開発

Mac上でフォント開発いうとFontographerが定番とおもいますが、無料で使えるFontForgeもありました。「ありました」というのは、本家がソースコードのみの配布に変更されたからです。

しかし、本家とは別に以下の場所でバイナリーの配布を試みています。

Install FontForge on Mac OS X
http://fontforge.github.io/en-US/downloads/mac/

この記事の執筆時点の最新版は2013-09-18で、日付が2013-02-22の版と比べれてかなり改善されていますが、まれに再現性のない奇妙な動作をします。

今すぐにFontForgeでフォントを描くのであればシステムをSnow Leopardにして以下のサイトから昔のFontForgeをダウンロードすることをお勧めします。

FontForge
http://www.fontforge.org

IllustratorのEPSファイルを読み込む場合には、新しいFontForgeの方が高速で良いと思います。ただし、EPSで描いた形状が大幅に変更される場合がありますので、修正するために古いFontForgeのお世話になるかもしれません。

しかし、単純明快であったビットマップの頃が懐かしい・・・

2013年5月15日水曜日

Apple製「連絡先」の互換性

Mac OS Xの付属アプリケーションContacts.app「連絡先」version 7.1 (1169)で[ファイル > 書き出す... > vCard を書き出す... ]にて作成したファイルを、iCouldの「連絡先」(2013/05/15分)に読み込ませるとエラーになります。
以下のように書き出したファイルの内容を変更すると読み込まれます。

変更前: VERSION:2.1
変更後: VERSION:3.0

上記の変更を書き出した人数分行います。また、[メモ]の改行が正しく表示されないので修正してください。

2013年4月16日火曜日

Mac OS X上のJava逆コンパイラ

Mac OS X上で動作するJavaの逆コンパイラとしてJava DecompilerのJD-GUIという無料のツールがあります。
http://java.decompiler.free.fr/?q=jdgui
オープンソースではありませんが、WindowsとLinux版もあります。

JADと言うコマンドラインツールもありますが、http://www.kpdus.comがアクセスできなくなり、メンテナンスされておらず、Java5もサポートされていません。この記事を書いている時点で、以下のミラーサイトがあります。
http://www.varaneckas.com/jad/