Blog

Mac OSXでpoからmo変換の国際化環境を構築する 〜gettextをインストールしてpoからmoにコンバートする〜


前回のMac OSXでpoからmo変換の国際化環境を構築する 〜MacPortsをインストールする〜に引き続いて、インストールしたMacPortsを使用してgettextをインストールします。gettextは国際化対応に必要なツールを集めたライブラリでgettextのmsgfmtコマンドを使うとpoからmoへのコンバートが出来る様です。

まずはアプリケーション>ユーティリティ>ターミナルを起動します。そしてターミナルからMacPortsを使ってgettextのライブラリを探します。ターミナルに「sudo port search gettext」と入力してエンターを押してください。パスワードを求められるので、自分のMacの管理者パスワードを入力します。

1
sudo port search gettext

しばらくすると検索結果に該当する結果の一覧が表示されます。

1
2
3
4
5
6
7
8
9
10
11
12
13
gettext @0.17 (devel)
GNU gettext package
gettext-lint @0.4 (devel)
gettext lint tools
p5-libintl-perl @1.16 (perl)
Perl internationalization library
p5-locale-gettext @1.05 (perl)
Perl interface to GNU gettext
poedit @1.4.2 (devel, aqua)
poEdit is a cross-platform gettext catalogs (.po files) editor.
rb-gettext @1.93.0 (ruby, devel)
a Localization library and tools which modeled GNU gettext. 
Found 6 ports.

今回欲しいのは一番上のgettextライブラリなのでこれをインストールします。ターミナルで「sudo port install gettext」と入力します。

1
sudo port install gettext

gettextのインストールが開始され、関連するライブラリ一式がインストールされます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--->  Fetching expat
--->  Verifying checksum(s) for expat
--->  Extracting expat
--->  Configuring expat
--->  Building expat
--->  Staging expat into destroot
--->  Installing expat @2.0.1_0
--->  Activating expat @2.0.1_0
--->  Cleaning expat
--->  Fetching gperf
--->  Verifying checksum(s) for gperf
--->  Extracting gperf
--->  Configuring gperf
--->  Building gperf
--->  Staging gperf into destroot
--->  Installing gperf @3.0.3_0
--->  Activating gperf @3.0.3_0
--->  Cleaning gperf
--->  Fetching libiconv
--->  Verifying checksum(s) for libiconv
--->  Extracting libiconv
--->  Applying patches to libiconv
--->  Configuring libiconv
--->  Building libiconv
--->  Staging libiconv into destroot
--->  Installing libiconv @1.12_2
--->  Activating libiconv @1.12_2
--->  Cleaning libiconv
--->  Fetching ncursesw
--->  Verifying checksum(s) for ncursesw
--->  Extracting ncursesw
--->  Configuring ncursesw
--->  Building ncursesw
--->  Staging ncursesw into destroot
--->  Installing ncursesw @5.7_0
--->  Activating ncursesw @5.7_0
--->  Cleaning ncursesw
--->  Fetching ncurses
--->  Verifying checksum(s) for ncurses
--->  Extracting ncurses
--->  Configuring ncurses
--->  Building ncurses
--->  Staging ncurses into destroot
--->  Installing ncurses @5.7_0
--->  Activating ncurses @5.7_0
--->  Cleaning ncurses
--->  Installing gettext @0.17_4
--->  Activating gettext @0.17_4
--->  Cleaning gettext

gettextが正常にインストールされたか確認してみます。「sudo port installed」と入力します。

1
sudo port installed

すると現在MacPortsでインストールされているソフトの一覧が表示されます。

1
2
3
4
5
6
7
The following ports are currently installed:
expat @2.0.1_0 (active)
gettext @0.17_4 (active)
gperf @3.0.3_0 (active)
libiconv @1.12_2 (active)
ncurses @5.7_0 (active)
ncursesw @5.7_0 (active)

gettextは正常にインストールされているようです。また関連するソフトも色々と入っています。さってやっとpoからmoへ変換する準備が整いました。Mac OSXでpoからmo変換の国際化環境を構築する 〜poファイルを編集する〜で編集したpoファイルのパスを確認します。僕はデスクトップに置いて変換します。ターミナルで「msgfmt -o Desktop/ja.mo Desktop/ja.po」と入力します。ja.poはファイル名なので各自のファイル名に置き換えます。-oの後が出力先ファイルになるので、出力したいパスとファイル名を指定します。

1
msgfmt -o Desktop/ja.mo Desktop/ja.po

これで指定した出力パスにmoファイルが完成しました。
2009012501

あとは、これを「lang」または「languages」フォルダにアップすると無事日本語化が完了します。
ながい道のりでした。。。でも今回の件でMacPortsが超絶便利じゃね?ってことが分かったのでこれから色々試しいこうと思います。

  1. Mac OSXでpoからmo変換の国際化環境を構築する 〜poファイルを編集する〜
  2. Mac OSXでpoからmo変換の国際化環境を構築する 〜MacPortsをインストールする〜
  3. Mac OSXでpoからmo変換の国際化環境を構築する 〜gettextをインストールしてpoからmoにコンバートする〜


This Post Has 5 Comments

Leave A Reply