次期macOSでの32-bitアプリサポート終了に伴い、Adobe CSなど動かなくなる可能性があるアプリをチェックする方法。

WWDC 2017で利用された64-bitアイコン。 macOS High Sierra
記事内に広告が含まれています。
スポンサーリンク

 次期macOSで32-bitアプリのサポートが終了するのに伴い、Adobe CSなど動かなくなりそうなアプリをチェックする方法です。詳細は以下から。

WWDC 2017で利用された64-bitアイコン。

 Appleは2017年06月に開催されたWWDC 2017でmacOS 10.13 High Sierraを32-bitアプリをサポートする最後のmacOSとする事を発表し、今後Mac App Storeで公開する全てのアプリの要件を段階的に引き上げ、最終的に野良アプリを含め今後macOSで利用されるアプリ全てに64-bit化を義務付ける事を開発者向けに公開していましたが、

32-bitアプリ終了のタイムライン

現地時間2018年01月24日に公開されたmacOS 10.13.4 beta (17E139j)ではその一環として、32-bitアプリ起動時に1度だけ「このアプリはMacのパフォーマンスに影響を与えます」という警告を出し、32-bitアプリが利用できなくなる環境64-bitテストモードがmacOSに搭載されました。

 これにより、開発者やユーザーが自身で開発しているアプリや使用しているアプリを今後継続して利用できるかをチェックできるようになったわけですが、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には対応しておりません。インストールできた場合も、必要システム構成外である点にご注意ください。

Mac OS Sierra(10.12)のCS6製品への対応状況 | Adobe Community

32bitapp.py

 Erik Gomezさんが公開した「32bitapps.py」は”system_profiler”コマンドを利用し、ユーザーのMacのアプリケーションフォルダにインストールされているアプリから64-bitに対応していないアプリ(has64BitIntelCodeがNo)を抽出してくれるPythonスクリプトで、実行するだけで以下の通り64-bit対応していないアプリをリストアップしてくれるので、アプリを起動し32-/64-bitを確認する方法より楽にチェックできます。

32bitapps.pyの実行結果

git clone https://gist.github.com/MagerValp/f926e84ac2e43d1f698343f1d6848de0
cd f926e84ac2e43d1f698343f1d6848de0/
python 32bitapps.py 

 ただし、Gomezさんが公開したスクリプトはUnicodeに対応していないので、日本語環境で利用される方はMagerValpさんがフォークしUnicode&CVS出力対応した32bitapps.pyを利用し、Table ToolGoogle Spreadsheetなどで表示すると見やすいと思います。

64-bit化されていないmacOSアプリ一覧

おまけ

 Adobe製のアプリについてはPhotoshop CS6およびCC for Macは64-bit化されていますが、内部には32-bitコンポーネントが利用されているため起動した後にフリーズし利用できなくなっているそうです。

64-bit OS benefits, limitations

おまけ2

  • system_profilerでレガシーアプリのリストを出力
  • system_profiler SPLegacySoftwareDataType

コメント

  1. 匿名 より:

    /Applications/Utilities にある System Information.app で 32bit のアプリを見ればいい

    • applech2 より:

      ご指摘ありがとうございます。
      その方法ですとアプリが64-bitに対応していても、アプリ内にあるヘルパーアプリやFrameworkなどコンポーネントが32-bitの場合にリスト漏れとなるので危険のようです。

タイトルとURLをコピーしました