AppleシリコンでM5UnifiedをNativeでビルドできない時やってみること

きっかけがよくわからないですがArm64のMacでM5Unified(もしくはM5GFX)のNative環境でリンクが失敗する現象に陥ったのでメモ。

上記画像のようにSDL2の関数とリンクできません。
原因はx86_64でオブジェクトを作成しちゃってるようです。

恒久対策は別にあるかもですが、とりあえずはarm64のバイナリを作るように指定すれば解決しました。
具体的にはplatformio.iniでbuild_flagsに-arch arm64を追加します。

[env:native]
platform = native
build_type = debug
build_flags = -O0 -xc++ -std=c++14 -lSDL2 -arch arm64
    -I"/usr/local/include/SDL2"
    -L"/usr/local/lib"
    -I"${sysenv.HOMEBREW_PREFIX}/include/SDL2"
    -L"${sysenv.HOMEBREW_PREFIX}/lib"
lib_deps = 
    m5stack/M5Unified@^0.1.12

m5stack-avatarをPC上で動かそう!

M5Stack製品の最強ライブラリであるM5Unified、使ってますか?
ご存知の方も多いでしょうが、M5UnifiedやM5GFXの一部機能はWindows, Mac, Linux上で実行・デバッグできます(PlatformIOに限りますが)。

スタックチャンのフロントエンド(?)である m5stack-avatarもM5Unified対応されています。
ということはPCで動かせます!ヤッター!

続きを読む

LINQでサイズのリストからインデックスに変換する方法

バイト列に格納されたデータのサイズをリストとして持っているとき、それぞれのデータのインデックスにLINQで変換する方法です。

特に目新しいことではないですが、今日全然思い出せなくて手が止まってしまったのでメモしておきます。

続きを読む

Seeed Studio XIAO用円形ディスプレイをLovyanGFXで使う

スイッチサイエンスでSeeed StudioのXIAO用ディスプレイを買いました。

Seeed Studio XIAO用円形ディスプレイ - 1.28インチwww.switch-science.com

タッチパネルだけじゃなくRTCやTFカードスロットなどもついており、裏にXIAOが接続できるのでコンパクトで組み込みも楽そうです。

丁寧なGetting Startedも用意されており、LVGLを使ったサンプルを動かすところまであっという間にできちゃいます。

wiki.seeedstudio.com

このままでも色々作れそうですが、やっぱりLovyanGFXを使いたいのでポーティングしておきます。このLCDを使うその時のために・・

続きを読む

WPF: DataGridのスクロールバーが右に張り付く問題

WPFのDataGridで、バインドしているItemsSourceをシチュエーションによって差し替えるアプリケーションを作っている時、Horizontal方向のスクロールバーが右端によってしまう現象に遭遇しました。

なんとなくItemsSourceを切り替えるのがお行儀良くないからなのかな?とは思いますが、使いづらいのでなんとなく逃げてみようと思います。

続きを読む

M5Stack CoreS3でWhisperAPIを使う

アイカツ!10th STORY 〜未来へのSTARWAY〜公開 と アイカツ!ミュージックフェスタ FINALなどが重なりブログの存在を忘れていました(いいわけ)

www.aikatsu.net

サボってる間に M5Stackから CORE S3が発売されたので リハビリがてら触ってみます。

続きを読む