macOS と Wine で作る HSP 3 の開発環境post

こんにちは、こんばんは。

Hot Soup Processor Advent Calendar 2016 の 初日を担当する @sharkpp です。

この記事は、macOS 上で、どうしても HSP 3 のアプリを開発したい、iOS アプリのデプロイ時だけではなく HSPDish での開発時も macOS で行いたい、そういった人が、HSP 3 の開発環境を手に入れるまでの手順です。

題して「macOS と Wine で作る HSP 3 の開発環境」です。

できるようになること

この記事に書かれていることを一通り行うと

  • macOS で HSPDish 用のソースがコンパイルができる
  • hgimg3 が動作する

が、できるようになります。

今回は諦めること。

  • hgimg4 が動作する Wine にパッチを当てないとダメっぽいので、どうしてもやりたい場合は Wine を使って Mac OS X で HSP と hgimg4 を動かしてみた を見ながら試してみてください。
  • オフラインでの HSP Document Library の動作 IE コンポーネントがうまく動作しない模様なので

この記事を読みにあたっては、最低限 macOS のシェルが触れることが必要とされています。

はじめに

まずはじめに、必要なソフトウェアの一覧です。

  • HSP 3 -- これがないと始まりませんよね?
  • Wine -- macOSでWindowsの実行ファイルを起動させるために必要です

Wine

今回は、安定版ではなく開発版の Wine を利用します。

基本的には、安定版も手順は変わらないと思います。

macOS 用の Wine は https://dl.winehq.org/wine-builds/macosx/download.html からダウンロードして、と行きたいのですが、どうやら現時点での最新の 1.9.23 から遡ること 1.9.9 まで、HSP が利用している API がうまく動いてくれないようなのです。

上記バージョンで動作させると

最新のWineでHSPを実行するとエラーが出る

のような感じで画像読み込み時にエラーが出ます。

なので、

Wine の過去にリリースされたファイルの一覧ページへWine 1.9.8 のパッケージを探す

このように辿り、Index of /wine-builds/macosx/i686 から winehq-staging-1.9.8.pkg をダウンロードしインストールしていきます。

Wine のインストール

Wine 1.9.8 インストールウィザード ページ 01Wine 1.9.8 インストールウィザード ページ 02Wine 1.9.8 インストールウィザード ページ 03Wine 1.9.8 インストールウィザード ページ 04Wine 1.9.8 インストールウィザード ページ 05Wine 1.9.8 インストールウィザード ページ 06Wine 1.9.8 インストールウィザード ページ 07

インストールウィザードでは特に選択を変更する部分はありません。

アプリケーションにインストールされたWine

インストールが完了すると、アプリケーションに追加されます。

Wineコンソール

アプリケーションから Wine Staging を選び、ターミナルを起動します。 ターミナルから

$ winecfg

と入力し実行すると、 winecfg が起動する前に、Wine の動作環境の作成が行われます。

Wine環境構築中のWine-Monoインストール確認

途中、 Wine-Mono をインストールするかどうか聞かれますが、これはどちらを選んでも問題ないです。

winecfg が起動したら、特に設定を変更することがない場合はそっと閉じます。

次は、日本語の表示ができるように設定を変更します。

設定しないと

HSP インストールウィザード 豆腐

こんな感じになります。

所謂、豆腐ですね。

Wine に日本語の表示のための設定などを行う

IPAモナーフォント のページから opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8.tar.gz をダウンロードし ~/.wine/drive_c/windows/Fonts/ へ放り込みます。

※ geocities がなくなった影響でサイトが消えてるため INTERNET ARCHIVE からのリンクに変更しました (2019年04月30日追記)

コマンドラインだけでやるなら

$ wget http://web.archive.org/web/20190324124426/http://www.geocities.jp/ipa_mona/opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8.tar.gz
$ tar xzf opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8.tar.gz
$ mv opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8/fonts/ipa*.ttf ~/.wine/drive_c/windows/Fonts/
$ rm -rf opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8

こんな感じです。

次に、MS Gothic などのフォントを別のフォント(ここでは IPA モナー フォント)のエリアスとする設定をします。

REGEDIT4

[HKEY_CURRENT_USER¥Software¥Wine¥Fonts¥Replacements]
"MS Gothic"="IPA モナー ゴシック"
"MS Mincho"="IPA モナー 明朝"
"MS PGothic"="IPA モナー Pゴシック"
"MS PMincho"="IPA モナー P明朝"
"MS UI Gothic"="IPA モナー UIゴシック"
"MS ゴシック"="IPA モナー ゴシック"
"MS 明朝"="IPA モナー 明朝"
"MS Pゴシック"="IPA モナー Pゴシック"
"MS P明朝"="IPA モナー P明朝"

Shift_JIS で! wine-font-replace-mona.reg として保存しレジストリを更新します。

コピペも面倒な場合は、 wine-font-replace-mona.reg をダウンロードしてください。

$ wine regedit wine-font-replace-mona.reg

Google Noto Fonts でも問題ないですが、このフォントには明朝がないので注意です。

Google Noto Fonts を利用する場合は、こんな感じです。

Google Noto Fonts から Noto Sans CJK JP をダウンロードし利用します。

$ wget https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip
$ unzip NotoSansCJKjp-hinted.zip
$ mv *.otf ~/.wine/drive_c/windows/Fonts/
$ rm -f NotoSansCJKjp-hinted.zip LICENSE_OFL.txt

レジストリに設定する内容は、例えば

REGEDIT4

[HKEY_CURRENT_USER¥Software¥Wine¥Fonts¥Replacements]
"MS Gothic"="Noto Sans Mono CJK JP Regular"
"MS Mincho"="Noto Sans Mono CJK JP Regular"
"MS PGothic"="Noto Sans CJK JP Medium"
"MS PMincho"="Noto Sans CJK JP Medium"
"MS UI Gothic"="Noto Sans CJK JP Medium"
"MS ゴシック"="Noto Sans Mono CJK JP Regular"
"MS 明朝"="Noto Sans Mono CJK JP Regular"
"MS Pゴシック"="Noto Sans CJK JP Medium"
"MS P明朝"="Noto Sans CJK JP Medium"

こんな感じです。

最後に、フォントのスムース処理の設定を行います。

REGEDIT4

[HKEY_CURRENT_USER\Control Panel\Desktop]
"FontSmoothing"="1"
"FontSmoothingGamma"=dword:00000578
"FontSmoothingOrientation"=dword:00000001
"FontSmoothingType"=dword:00000002

を同じく Shift_JIS で! wine-font-smoothing-rgb.reg として保存しレジストリを更新します。

コピペがやっぱり面倒な場合は、 wine-font-smoothing-rgb.reg をダウンロードしてください。

$ wine regedit wine-font-smoothing-rgb.reg

HSP

ここでは、現時点での最新の安定版 HSP 3.4 を利用します。

なぜ Wine は開発版を使うんだというツッコミはなしです。

http://hsp.tv/make/downlist.html から HSP 3.4 をダウンロードしてください。

hsp.tvhsp.tv HSPダウンロードページ

HSP のインストール

ダウンロードした hsp34.exe をダブルクリックし、インストーラを起動します。

途中の「デスクトップ上にアイコンを作成する」や「拡張子の関連付けを行う」はチェックを外しておきましょう。

それ以外のインストール先などは、お好みで。

HSP 3.4 インストールウィザード ページ 01HSP 3.4 インストールウィザード ページ 02HSP 3.4 インストールウィザード ページ 03HSP 3.4 インストールウィザード ページ 04HSP 3.4 インストールウィザード ページ 05HSP 3.4 インストールウィザード ページ 06HSP 3.4 インストールウィザード ページ 07

インストールが完了したら、デモアプリが起動します。

HSPのデモアプリ

エラーもなく起動していれば OK です。

Wine で WINEPREFIX を利用し環境を切り替えていなければ、 ~/.wine/drive_c/hsp34 にインストールされていると思います。

$ wine c:\\hsp34\\hsed3.exe

スクリプトエディタの実行ファイルを起動すると、Windwos と同じようにエディタが起動すると思います。

HSPの標準エディタ

ついでにアシスタントも起動しているので、必要なければ設定から起動しないようにしておきましょう。

HSPの標準エディタの設定を変更

この時点で、HSPDishのプログラムもコンパイルできるようになっていると思います。

HSPDishのサンプル

hgimg4 を利用する場合は、もう少し手間がかかります。

ということで、時間切れ。

ここまで読んでいただきありがとうございます。

次は @mjhd_devlion さんの Linux・MacでVimでHSP開発 です。

やり残したこと

残念ながら、今回は諸事情でできなかったことがあります。

  • Wine 最新版で動作しない
    • これは、Wine側の問題ではないかと思うので、少し調べてみたいと思います。
  • HSP Help Library が動作しない
    • Wine に IE をインストールするのは難しいようなので諦めたほうがいいかも。
    • 公式で動作していたものはいつの間にかサーバーエラーとなるようなので @mjhd_devlion さんの ohdl.hsproom.me で確認するのがいいと思います。
    • Wine-Gecko なる IE 互換のアプリがあるようなのですが、はたして。
  • hgimg4 が動作しない。
  • iOS のアプリを実際に作れるまでの流れ
    • これも、いろいろ調べながら試してみたいです。

参考


この投稿は Hot Soup Processor Advent Calendar 20161日目の記事です。



   /   変更履歴  /   Permalink  /  このエントリーをはてなブックマークに追加 
 カテゴリ: ブログ  /   タグ: Advent Calendar, HSP, OS X, macOS, Wine