mac&PC

[Apple シリコン] cooViewer の M1 Mac 対応 [arm64]

投稿日:2022/06/13 更新日:

長らく愛用している cooViewer が M1 Mac にネイティブ対応していなかったので対応させてみた。
['22/09 追記] $ git clone から一発でビルドできるようにした → コチラ

 

背景

macOS の老舗画像ビューワである cooViewer を私は長らく愛用している。
2020/02 に Catalina 以降対応のためと思われる 64bit対応版をリリースされているが、
それ以降のリリースはなく、Appleシリコン対応されていないため、
M1 な Mac では Rosetta2 経由の動作となる。

今回はこの cooViewer を Appleシリコン/arm64 に対応させ、
M1 Mac でネイティブ動作するようにする。

 

Appleシリコン/arm64 版ビルド

ソースコードのダウンロード

本家(Github) から最新のソースコードをダウンロードする (v1.2b25)。

 

外部フレームワークバイナリへの対応

ダウンロードした "ソースコード" の中には、外部フレームワークのビルド済みバイナリが同梱されている。
しかし intel 版しか内包されていないので、この状態で arm64 ビルドをしようとしても失敗する。
足りないのは以下の二つ。

  • UniversalDetector
  • XADMaster framework

Google Adsense

今回はこれらを他のアプリケーションから拝借することにした。
私は The○narchiver.app から上記フレームワークごと物理コピーした。
一方 XADMaster については上記コピーした一式内には Header 類がないので、
ダウンロードした大元のソースコードに同梱されていた Header をコピーしなおした。

 

ビルド

プロジェクトファイル (*.xcodeproj) を含むフォルダ内でターミナル等から以下を実行。

上記コマンドで Appleシリコン専用ビルドができる。
-arch x86_64 を追加すると Universal Binary(2) になる。
macosx12 というのは macOS 12 Monterey 以降向け, 必要に応じて変更。
ビルドを実行すると build/Default 以下に cooViewer.app が生成されている。

できあがった app を "Cmd + i" で情報を表示すると
「種類: アプリケーション (Apple シリコン)」等となっているのが確認できる。

 

これでサクサク, すっきり。

 

蛇足

cooViewer は WebP のアーカイブも正しく表示することができる。

実は母艦はハード, ソフト共に長らく更新されていなかったので気づいていなかったのだが、
どうやら macOS 11 Big Sur から OS として WebP にネイティブ対応したため、
cooViewer でも WebP が扱えるようになっていたようだ。

 

追記 ['22/09]

$ git clone から一発でビルドできるようにしました → コチラ

 

Google Adsense

Google Adsense

-mac&PC
-,

Copyright© P-Life, 2024 All Rights Reserved.