「Mono on OS X」を試す
併せてMonoDevelopmentを導入するなら
Mono本体とは直接関係ないが、統合開発環境の「MonoDevelop」を合わせてインストールしたいと考える向きも存在するはず。このツールには、日本語フォントの設定が存在しないという落とし穴があるため、本体(MonoDevelop.app)のインストール後に必ず以下のコマンドラインを実行しておくこと。これで、文字化けの問題は解消できるはずだ。
$ echo '"Lucida Grande" = "Hiragino Kaku Gothic Pro"' > pango.aliases
$ sudo cp pango.aliases /Library/Frameworks/Mono.framework/Versions/Current/etc/pango/
手始めに「MonoCalendar」をインストール
OS Xに導入したMono環境は、.NET Frameworkベースのソフトであればすべて実行できるわけではない。Windowsの標準実行形式バイナリー(PE)のうち、Mono/.NET Framework向けにビルドされたものでなければならないうえ、複数ファイルをコピーするタイプはディレクトリー構造がOSに依存するため除外される。つまり、Mono/.NET Framework向けにビルドされ、インストーラーによる導入処理を伴わない「.exe」ファイルでなければならない。
Mono/.NET Framework向けにビルドされたバイナリーかどうかは、Terminalからfileコマンドを実行して「Mono/.Net assembly」と表示されるかどうかで分かる。この方法だけでは、依存する.NET Frameworkのバージョンまで調べることはできないが、簡単なチェックには使えるだろう。
$ file MonoCalendar/MonoCalendar.exe
MonoCalendar/MonoCalendar.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit Mono/.Net assembly
テストには、.NET Framework 1.0向けに記述された「MonoCalendar」を使用した。起動自体は簡単で、「mono
」コマンドの引数に「.exe
」ファイルを与えるだけだ。
$ mono MonoCalendar.exe
なお、初回起動時には文字化けが発生するはず。これは適切なフォント設定がないにもかかわらず日本語ロケールが指定されているためで、初期設定ファイル(~/.config/MonoCalendar/settings.xml
)の2行目にある「ja_JP
」を「en-US
」に修正すれば、英語で表示されるようになる。
また標準状態では、MonoCalendarウィンドウのタイトルバー部分がOS Xのメニューバーに隠れて起動してしまい、ウィンドウを移動できない。初期設定ファイルにある以下の設定の数値を、「0
」から任意の数値(「100
」程度)に書き換えると隠れることがなくなる。
<Top type="System.Int32">0</Top>
ところで、ソフトの互換性だが……ソースコードにまったく手を加えず(Windows向けに)ビルドされたものは、OS Xでそのまま実行できることは稀だと考えたほうがいい。実際、Vectorなどのサイトで公開されているWindows/.NET Frameworkソフトをいくつか試したが、起動はできても何かキーを押した途端に異常終了するなど、実用からはほど遠いレベルだった。
ペイントツール「Paint.NET」の派生プロジェクト「Pinta」のように、マルチプラットフォーム指向のアプリケーション開発に使うものだということだろう。
この連載の記事
-
第187回
iPhone
NFCの世界を一変させる!? iOS 11「Core NFC」の提供開始が意味するもの -
第186回
iPhone
Appleと「4K HDR」 - iOS 11で写真/動画を変える「HEIF」と「HEVC」 -
第185回
iPhone
iPhone 7搭載の「A10 Fusion」「W1」は何を変えるか -
第184回
iPhone
オープンソース化された「PowerShell」をMacで使う -
第183回
iPhone
アップル製デバイス連携の鍵、「Continuity」とは? -
第182回
iPhone
DCI-P3準拠へと歩むiPhone/iPad - WWDC基調講演で秘められた新技術は、ここにある(2) -
第181回
iPhone
WWDC基調講演で秘められた新技術は、ここにある(1) -
第180回
iPhone
WWDC直前、買い替え前にマイMacのココをチェック -
第179回
iPhone
私がiTunesを使わなくなった5つの理由 -
第178回
iPhone
今あえてiPhone「Live Photos」を知る -
第177回
iPhone
「Windows Subsystem for Linux」はOS Xのライバルとなるか? - この連載の一覧へ