はじめに
![CH32V003F4P6](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F3569302%2Ff5f78427-e83f-0783-8324-6deaed802861.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=e005fba796ced2b7e55b8da63ba6e263)
Intel MacのmacOS 13.6を使用します。
こちらの説明通りに作業を進めました。
https://74th.hateblo.jp/entry/ch32v003fun
コンパイラが見つからない
./ch32v003fun/ch32v003fun/ch32v003fun.mk
を開発環境に合わせてあげます。
ch32v003fun.mk
- PREFIX?=riscv64-unknown-elf
+ PREFIX?=riscv32-unknown-elf
Build
% make all
riscv32-unknown-elf-gcc -o test.elf ch32v003fun/ch32v003fun/ch32v003fun.c test.c -g -Os -flto -ffunction-sections -static-libgcc -march=rv32ec -mabi=ilp32e -I/usr/include/newlib -I./ch32v003fun/ch32v003fun/../extralibs -I./ch32v003fun/ch32v003fun -nostdlib -I. -Wall -L/usr/local/opt/bison/lib -T ./ch32v003fun/ch32v003fun/ch32v003fun.ld -Wl,--gc-sections -L./ch32v003fun/ch32v003fun/../misc -lgcc
dyld[34374]: Library not loaded: /usr/local/opt/isl/lib/libisl.22.dylib
Referenced from: <97D19A7B-A41C-3329-A4F2-A3DDEE64C664> /opt/riscv/libexec/gcc/riscv32-unknown-elf/8.3.0/cc1
Reason: tried: '/usr/local/opt/isl/lib/libisl.22.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/isl/lib/libisl.22.dylib' (no such file), '/usr/local/opt/isl/lib/libisl.22.dylib' (no such file), '/usr/local/lib/libisl.22.dylib' (no such file), '/usr/lib/libisl.22.dylib' (no such file, not in dyld cache), '/usr/local/Cellar/isl/0.26/lib/libisl.22.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/Cellar/isl/0.26/lib/libisl.22.dylib' (no such file), '/usr/local/Cellar/isl/0.26/lib/libisl.22.dylib' (no such file), '/usr/local/lib/libisl.22.dylib' (no such file), '/usr/lib/libisl.22.dylib' (no such file, not in dyld cache)
riscv32-unknown-elf-gcc: internal compiler error: Abort trap: 6 signal terminated program cc1
エラーで止まりました。
libisl.22.dylib
がないとでています。
libを誤魔化す
私の環境にインストールされているlibがlibisl.23.dylib
だったので、libisl.22.dylib
としてシンボリックリンクを作成します。バージョンが一つしか違わないので多分動くでしょう😜
% cd /usr/local/Cellar/isl/0.26/lib/
% ln -s libisl.23.dylib libisl.22.dylib
% cd -
再Build & Flush
% make all
... 中略 ...
Found WCH Link
WCH Programmer is LinkE version 2.10
Chip Type: 003
Setup success
Flash Storage: 16 kB
Part UUID : 5c-96-ab-cd-c4-b6-bc-53
PFlags : ff-ff-ff-ff
Part Type (B): 07-13-bb-91
Read protection: disabled
Interface Setup
Image written.
書き込み成功🎉
おつかれさま🍺