26 Apple Silicon で動かした
今日、2020年7月3日昼にAppleからDeveloper Transition Kitが届きました。ディスプレーに繋ぎアクティベート、とりあえずは、環境もバックアップからコピーせずに動く状態に。
VintageWineがサードパーティーのソフトに依存している部分はデータベースの接続部分、PostgreSQL, MySQL, HBase, SQLiteなどに接続できますが、実質的に動いているPostgreSQLのみを対象にして作ることに。
実質2時間
まずは、PostgreSQLのソースをダウンロードして来て、./configure -> make -> sudo install と進みます。なんの問題もなく、libpq.aが Arm64 ネーティブで出来上がりました。VintageWine の方は PostgreSQL以外のdbadaptorを取り除いてコンパイル。これも、いくつかのエラーとそれに対する対応、コードは1行も直さず、buildするさいの不必要な環境を参照するのを取り除いただけ。
流石に、ユーザにパッケージをワンタッチでインストール出来る部分のスクリプトは色々手を加えなければならないので飛ばし、実質的にPostgreSQLのサーバに接続して動くまでをやってみました。実質2時間ほどで、Apple Siliconの上でArm64 ネーティブな環境で動きました。感動です。14年前のPowerPCからIntelへの移行はこう簡単にはいかなかったと思います。1週間以上かかったのではないかなぁ。
こんなに短時間でできたのも、VintageWineを出来るだけ内製していて、サードパーティーに依存するものが少なくなっている事が功をそうしたと言えます。
Appleのエンジニアに感謝
ここまで簡単に移行ができたのは Apple の Big Surに関わったエンジニア達の努力の結果だと思います。
これから、Apple Siliconの製品の発売までに細かい問題はきっと出てくると思いますが、解決できない問題はないでしょうから楽しんで仕事することにします。まずはご報告までです。