【Mac】A5:SQL Mk-2をM1 Macで動かす
こんにちは、コル(@bravecol)です。
今回はMacでA5:SQL Mk-2を動作させました。
「Windows使えよ」というツッコミは置いておいて、、、
試そうと思ったきっかけは下記の状況に出くわしたからです。
- M1 Mac(自身のPC)で仕事している
- 業務上どうしても他チームがA5:SQL Mk-2で出力したER図を参照する必要があった
- Windows PCには今更変えたくない
そんなわけでMacでA5:SQL Mk-2を動作させる実験をしたところ、一応動いたので備忘として手順をまとめておきます。
実施環境
- MacBook Pro (13-inch, M1, 2020)
- mac OS Monterey(12.5)
- Homebrew インストール済み
- A5:SQL Mk-2(x64 edition)2.17.2
- Wine 6.0
今回は3Homebrewインストールまでは実施しているものとして手順を記載します。
Homebrewに関しては調べたらたくさん情報はあるので調べること。
参考までにQiitaの記事「Homebrewのインストール」を載せておきます。
手順1 A5:SQL Mk-2ダウンロード
まずはA5:SQL Mk-2(64bit版)を公式サイトからダウンロード。
僕の実施時の最新は2.17.2でした。
ダウンロードしたら任意の場所に解凍してわかりやすい名前をつけておきます。
例 : 「/users/{ユーザー名}/Applications/」に「a5m2」として配置
手順2 wineのインストール
次にWineをインストールします。
恥ずかしながら今回のMacでA5:SQL Mk-2を動かす、ことをやるまでwineを存じ上げませんでした^^;
Wine (originally an acronym for “Wine Is Not an Emulator”) is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, macOS, & BSD.
(翻訳)Wine(元々は「Wine Is Not an Emulator」の頭文字)は、Linux、macOS、BSDなどのPOSIX準拠のOS上でWindowsアプリケーションを実行できる互換性レイヤーです。
https://www.winehq.org/
ターミナルを起動しシェルで下記を実行。
$ brew tap gcenx/wine
次に下記を実行。
$ brew install --cask --no-quarantine wine-crossover
これでA5:SQL Mk-2が動作するようですが、このままでは日本語が使えないので日本語フォントを使えるようにします。
手順3 A5:SQL Mk-2を日本語で使う(winetricksのインストール)
まずは任意のフォルダへ移動(例:ダウンロードフォルダ)
$ cd ~/Downloads
wget でも curl でも好きな方でダウンロード(僕はwgetでやりました)
$ brew install wget
$ wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
ダウンロードしたwinetricksをインストール実行
$ brew install winetricks
zshのRun Commandに環境変数の追加を設定
$ echo 'export PATH="/opt/homebrew/opt/unzip/bin:$PATH"' >> ~/.zshrc
MSゴシック等の代替フォントをインストール
$ winetricks fakejapanese_ipamona
メイリオフォントの代替フォントをインストール
$ winetricks fakejapanese_vlgothic
手順4 RetinaModeの設定(必要に応じて)
やらなくても動きます。が人によってはこうなります^^;(文字が見にくい。。。)
そこでなんとかならないかと探しているとA5:SQL Mk-2作者の方が解説してくださってました。
ありがたやありがたや。
ここは解説に沿ってやっていきます!^^
レジストリエディタ起動
wineでレジストリエディタを起動します。
$ wine regedit
- HKEY_CURRENT_USER\Software\Wineに「Mac Driver」を作成(右クリック→新規→キーにて追加)
- 文字列型で RetinaMode を Y に設定(右クリック→新規→文字列型にて追加)
を行い図のように設定して閉じる。
wine設定より解像度を設定する
wineの設定画面を開きます。
$ winecfg
「画面」→「画面解像度」のdpi値を自分の好みの大きさになるように設定する。
手順5 Automatorでアプリを作成(起動を簡略化)
この辺はご存知の方はサクッと自分なりにやっちゃってOKです。
僕が実行した一例を載せておきます。
まずはAutomatorを起動して「アプリケーション」を選択。
検索窓に「シェル」と入力して「シェルスクリプトを実行」を選択。
あとは単純に「手順1」で配置したA5:SQL Mk-2をwineにて参照できるようにシェルを書き込むだけです。
右上の「実行」でパスがあっていればMacでA5:SQL Mk-2が動きます。
ちなみにシェルの2行目のwineコマンドのインストール箇所は人によって違うかもしれないので、分からない場合はtypeコマンドで調べてください。
cd /users/{ユーザー名}/Applications/a5m2
/usr/local/bin/wine A5M2.exe
typeコマンドに関してはサラッとですがメモ書き残してます。
※2023/03/11 追記(上記2行目のwineコマンド実行時でエラーが出た)
################################################################################
# Wine Is Not an Emulator #
################################################################################
Welcome to wine-7.7 (CrossOverFOSS 22.0.1).
In order to start a program:
.exe: wine64 program.exe
.msi: msiexec /i program.msi
If you want to configure wine:
winecfg
To get information about app compatibility:
appdb Program Name
brew upgradeを実施した際にwineのバージョンが上がって変更があったのかな?内容は後日調べますが
上記に記載のある通りwine64を指定すれば起動しました!^^
cd /users/ryota/Applications/a5m2
/usr/local/bin/wine64 A5M2.exe
実行結果
まとめ
今回はM1 MacでA5:SQL Mk-2を動作させました。
仕事上どうしてもA5:SQL Mk-2を使わざる終えない状況になるとは思いませんでしたが、無事Macでそのまま開発することができてとても嬉しい限りです。しかも意外とサクサク動いてありがたい。
自分の備忘録ですが、少なからず自分と同じ状況になり「MacでA5:SQL Mk-2動かせないか?」と思う人の手助けになれば幸いです。
最後に参考にさせていただいた方々の記事を貼っておきます!大変助かりました。
それでは皆さまも快適な開発ライフをお送りください^^