次期macOSで32-bitアプリのサポートが終了するのに伴い、Adobe CSなど動かなくなりそうなアプリをチェックする方法です。詳細は以下から。
Appleは2017年06月に開催されたWWDC 2017でmacOS 10.13 High Sierraを32-bitアプリをサポートする最後のmacOSとする事を発表し、今後Mac App Storeで公開する全てのアプリの要件を段階的に引き上げ、最終的に野良アプリを含め今後macOSで利用されるアプリ全てに64-bit化を義務付ける事を開発者向けに公開していましたが、
32-bitアプリ終了のタイムライン
- 2017年06月
▶ WWDC 2017でmacOS 10.13 High Sierraが32-bitアプリをサポートする最後のmacOSとなると発表。
▶ Mac App Store外で公開しているアプリにも64-bit化を要求。 - 2018年01月
▶ Mac App Storeで公開する新しいアプリは64-bit化を義務化。
▶ 32-bitアプリが動かなくなる64-bitテストモードを搭載したmacOS 10.13.4 High SierraのBeta版を公開。 - 2018年06月
▶ Mac App Storeで公開する全てのアプリ&アップデートは64-bit化を義務化。 - 2018年秋~
▶ macOS 10.14/10.15で32-bitアプリのサポートを終了?
現地時間2018年01月24日に公開された「macOS 10.13.4 beta (17E139j)」ではその一環として、32-bitアプリ起動時に1度だけ「このアプリはMacのパフォーマンスに影響を与えます」という警告を出し、32-bitアプリが利用できなくなる環境「64-bitテストモード」がmacOSに搭載されました。
Running Photoshop CS6 with nvram boot-args=-no32exec causes it to just freeze when opened 🙁 Seems I'll have to put High Sierra on another partition when Apple finally kills off 32-bit support.
— Adam I (@iAdam1n) 2018年1月25日
Here's the message #macOS 10.13.4 shows when launching a #32Bit app. pic.twitter.com/NqcLqsUxT5
— Felix Schwarz (@felix_schwarz) 2018年1月24日
これにより、開発者やユーザーが自身で開発しているアプリや使用しているアプリを今後継続して利用できるかをチェックできるようになったわけですが、2016年09月にリリースされたmacOS 10.12 Sierraでの対応を終了しながらも、Java 6ランタイムをインストール/偽装してやることでHigh Sierraでも動作していたAdobe CSアプリなどが次期macOSでは完全に動かなくなる可能性があるとして、PinterestのエンジニアのErik Gomezさんらが64-bit化されていないアプリを特定するスクリプトを公開しています。
2016/9/21にMac OS Sierra(10.12)が公開されますが、CS6のバージョンは10.12には対応しておりません。インストールできた場合も、必要システム構成外である点にご注意ください。
32bitapp.py
Erik Gomezさんが公開した「32bitapps.py」は”system_profiler”コマンドを利用し、ユーザーのMacのアプリケーションフォルダにインストールされているアプリから64-bitに対応していないアプリ(has64BitIntelCodeがNo)を抽出してくれるPythonスクリプトで、実行するだけで以下の通り64-bit対応していないアプリをリストアップしてくれるので、アプリを起動し32-/64-bitを確認する方法より楽にチェックできます。
git clone https://gist.github.com/MagerValp/f926e84ac2e43d1f698343f1d6848de0 cd f926e84ac2e43d1f698343f1d6848de0/ python 32bitapps.py
ただし、Gomezさんが公開したスクリプトはUnicodeに対応していないので、日本語環境で利用される方はMagerValpさんがフォークしUnicode&CVS出力対応した32bitapps.pyを利用し、Table ToolやGoogle Spreadsheetなどで表示すると見やすいと思います。
おまけ
Adobe製のアプリについてはPhotoshop CS6およびCC for Macは64-bit化されていますが、内部には32-bitコンポーネントが利用されているため起動した後にフリーズし利用できなくなっているそうです。
おまけ2
- system_profilerでレガシーアプリのリストを出力
system_profiler SPLegacySoftwareDataType
- 32bitapps.py – MagerValp Gist
- 64-bit OS benefits and limitations for Photoshop – Adobe
コメント
/Applications/Utilities にある System Information.app で 32bit のアプリを見ればいい
ご指摘ありがとうございます。
その方法ですとアプリが64-bitに対応していても、アプリ内にあるヘルパーアプリやFrameworkなどコンポーネントが32-bitの場合にリスト漏れとなるので危険のようです。