生徒のMacBookにトラブル多発 macOSをCatalinaにアップグレードしたら

プログラミング

昨年から複数の生徒さんのMacBookでトラブルが多発しています。どうやらmacOSをMojaveからCatalinaにアップグレードした後に問題が生じているようです。そこで、教室のMacBookはまだMojaveのままでしたが、試しに1台をCatalina10.15.2にアップグレードしてみました。
生じたトラブルと解決策を記します。

■32bitアプリは使えない
Catalinaでは32bitアプリのサポートを終了しました。
教室のMacBookでも昔インストールしたアプリは下図(左の2つ)のように使えなくなっています。

AptanaStudio3は最近は使用していません。代わりにVisual Studio Codeがお勧めです。
Scratchもバージョン1.4オフライン版は使えませんが、新しいバージョンを使えば問題ないでしょう。

■macOSのアップグレード中に一部のファイルが新しい場所に移動できない
この場合、下図のように「場所が変更された項目」というフォルダーができています。
教室のMacBookの場合は、Anacondaがこのフォルダーに入っていました。

Anacondaを新しくインストールし直して解決しました。

■Processing3.5.3が起動できない
これは重症です。下記のような「An error occurred during startup.」の画面が出ます。

Processingを終了します。
以下の2つのフォルダーを削除します。

一つ目は下図のように「書類」のProcessingフォルダーを丸ごと削除します。
このとき、過去に作成したプログラムファイルがこのフォルダー内にあれば、別の場所にコピーしておきましょう。

もう一つは、下図のようにユーザー名下にある「ライブラリ」内のProcessingフォルダーを丸ごと削除します。


このライブラリフォルダーは普通は見えないようになっています。
Finderで表示→表示オプションを表示とし、下図のように「”ライブラリ”フォルダを表示」にチェックを入れればライブラリフォルダが現れます。

■Processing3.5.3でプログラムを実行すると全画面表示になる
プログラムを実行するとsize()指定が効かず、全画面表示になることがあります。
コンソールにはCould not check the status of “Displays have separate spaces.”というエラーが表示されます。

Processingの環境設定画面を開き、保存ボタンを押すとsize()指定が有効になりました。

■Processing3.5.3でVideoライブラリが使えない

こちらに新しい記事を掲載しました。

ProcessingのvideoライブラリがmacOS Catalinaで使えない問題への対応方法
★こちらには新しい記事があります。 カメラ映像を使用した授業でmacOS Catalinaの場合にProcessingのvideoライブラリが使えない問題が多発しています。 解決策の手順としては以下のようになります。 動画も作成したので参考...

古いバージョンのProcessing2.2.1でもカメラ映像の表示はできなくなったようです。

https://qiita.com/kikpond15/items/9cb21d9091034bd3ae71
に解決策をまとめて頂いているので、これを参考にやってみたところ無事カメラ映像が表示できました。

手順
1.以下からvideoライブラリーのバージョン2をダウンロードする
https://github.com/processing/processing-video/releases/tag/r6-v2.0-beta4
2.元のvideoライブラリと置き換える
3.ターミナルを開いて,以下のようにvideoライブラリーの/library/macosxにcdする
$ cd ~/Documents/processing/libraries/video/library/macosx
4.以下のコマンドを順次実行する
$ xattr -p com.apple.quarantine libavcodec.58.35.100.dylib
$ xattr -w com.apple.quarantine “00c1;5dc1bfaa;Chrome;78F18F7D-3F71-4E55-8D58-BAB946AB4707” *.dylib
$ cd gstreamer-1.0
$ xattr -w com.apple.quarantine “00c1;5dc1bfaa;Chrome;78F18F7D-3F71-4E55-8D58-BAB946AB4707” *.dylib
4.プログラム内で以下のように”FaceTime HD Camera”の指定をする
video = new Capture(this, width, height, “FaceTime HD Camera”);

■Processing3.5.3でP3Dモードにすると警告表示が出る
AppKit警告が出ますが、3D表示はできるので当面良しとしましょう。