CatalinaでDigisparkのコンパイルができない問題

macOS Catalinaの被害者シリーズ第1段！！ Digispark(ATTiny85)のプログラムコードがmacOS Catalina(10.15.1)にアップデートするとプログラムのコンパイルができなくなりました！！

# 環境とか

* MacBook Pro (13-inch, 2019, Four Thunderbolt 3 ports)
* mac OS Catalina ( v10.15.1 )
* Arduino IDE 
* Digispark

# Digisparkって？？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/249063/a7e57e37-d349-6a60-186e-a00ffc80c3fc.png)

USB機器として振舞うことができるマイコン．これでキーボードとして振る舞って悪いことするとBadUSBとかで呼ばれる．　

# 通常の開発環境
http://digistump.com/wiki/digispark/tutorials/connecting
https://qiita.com/mt08/items/df4ed8c659b205d1fa1e

Arduino IDEを用いてDigisparkをの開発環境を整えるときは通常次の流れ

1. Arduino IDEをインストール
2. “Additional Boards Manager URLs”にJSONファイルのURIを記述
3. "Boards Manager"で“Digistump AVR Boards”をインストール
4. Tools>Boardに"Digispark"が登場し，プログラムのコンパイルができるようになる

# コンパイルできない

Catalinaにあげたらコンパイルできなくなった！！
原因は，　32bitアプリケーションをサポートしなくなったせい．
Arduino IDEは最新版は64bit対応しているが，Digistumpのプラグインは32ビット対応していない様子．

日本語でググっても出てこない...

仕方がないので，英語フォーラムを探し回ってたら，こんな話が...
https://digistump.com/board/index.php?topic=3198.0


>Hello Gents
>
>I'm new to this forum.
>I am working with the Digispark Pro since two years now. My preferred develop environment is the Arduino IDE (currently 1.8.11).
So far I could solve all problems I've encountered using forums and google :D
>
>For compiling and loading I use the Board Manager >from Digistump: >http://digistump.com/package_digistump_index.json

>Before Mac OS X Catalina which forces all applications to run on 64-bit, everything worked perfectly.
>After upgrading the Mac, Ardunio IDE still works fine for non-Digistump boards. Compilation and Loading works great.
But when switching the IDE to the Board "Digistump AVR Boards - Digistump Pro (Default 16MHz)", I'll get the following error message during compile time:
 
>Detecting libraries used...
/Users/Foo/Library/Arduino15/packages/arduino/tools/avr-gcc/4.8.1-arduino5/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -w -x c++ -E -CC -mmcu=attiny167 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_DIGISPARKPRO -DARDUINO_ARCH_AVR -I/Users/Foo/Library/Arduino15/packages/digistump/hardware/avr/1.6.7/cores/pro -I/Users/Foo/Library/Arduino15/packages/digistump/hardware/avr/1.6.7/variants/pro /var/folders/xk/rpmnzjmd2lld6tgtbrx2kjhc0000gn/T/arduino_build_250432/sketch/sketch_oct10a.ino.cpp -o /dev/null
fork/exec /Users/Foo/Library/Arduino15/packages/arduino/tools/avr-gcc/4.8.1-arduino5/bin/avr-g++: bad CPU type in executable
Error compiling for board Digispark Pro (Default 16 Mhz).

>Please forgive if somebody else already posted this problem in the forum before. I couldn't find it.
Does anybody know how to solve this issue?

>Many thanks!

これだよ，これ！！
スレッドの中身を見ていると，それっぽいのがありました．

>I played around a bit with the json file and with my custom made it now works.
Just use this one https://github.com/LukasSchulz/arduino-boards-index/blob/master/package_digistump_index.json and reinstall the Digistump AVR package in the boards manager.

結論から言うと，digistump公式のjsonファイルではなく，有志のjsonに設定すれば動くと言うことですね！

http://digistump.com/package_digistump_index.json

https://raw.githubusercontent.com/LukasSchulz/arduino-boards-index/master/package_digistump_index.json

↑を追加のボードマネージャのURLに設定する．

<img width="977" alt="スクリーンショット 2019-12-20 14.04.28.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/249063/90691a33-7d0c-e42b-f193-52b256d4ba66.png">