zellij-org / zellij

A terminal workspace with batteries included
https://zellij.dev
MIT License
20.25k stars 630 forks source link

'missing required CPU features' error #2963

Open ysoftman opened 9 months ago

ysoftman commented 9 months ago

I'm using latest zellij(Mach-O 64-bit executable arm64) on Apple M1 Max When I start zellij, it displays plugin error. When I exit zellij, it show 'missing required CPU features' error like below: image

zellij.log

ERROR  |zellij_server::plugins::w| 2023-11-27 11:17:47.907 [async-std/runti] [zellij-server/src/plugins/wasm_bridge.rs:815]: failed to start plugin 1 for client 1

Caused by:
    0: Failed to create instance, plugin env and subscriptions for plugin 1
    1: missing required CPU features: "EnumSet(SSE2 | SSE3 | SSSE3 | SSE41 | SSE42 | POPCNT)" 

Basic information

zellij --version: 0.39.1 stty size: 55 104 uname -av or ver(Windows): Darwin ysoftman-MacBook-Pro.local 23.1.0 Darwin Kernel Version 23.1.0: Mon Oct 9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000 arm64 alacritty --version: alacritty 0.12.3 (5efb069)

ysoftman commented 8 months ago

I solved this by installing the latest(0.39.2) zellij

# install latest zellij
arch -arm64 brew install zellij

# check 0.39.2 version
/opt/homebrew/bin/zellij --version
zellij 0.39.2

# and it is an arm64 binary
file /opt/homebrew/bin/zellij
/opt/homebrew/bin/zellij: Mach-O 64-bit executable arm64
yohannes commented 7 months ago

Fyi, I'm running 0.39.2 and the same issues still persists.

imsnif commented 7 months ago

How about if you delete the cache folder and try again? This can sometimes happen due to old corrupted cache artifacts from running a development version or some such.

yohannes commented 7 months ago

@imsnif i see. I checked in ~/.cache folder, there's no zellij.

yohannes commented 7 months ago

@imsnif i see. I checked in ~/.cache folder, there's no zellij.

I found the cache folder to be in ~Library/Caches/org.Zellij-Contributors.Zellij. Deleting it solved the problem.

LukeCarrier commented 2 months ago

Should the cache directory be architecture specific to avoid collisions?

I'm running on macOS and have two Homebrew installations (/opt/homebrew for arm64 and /usr/local/homebrew for amd64) for some projects which aren't very portable. I currently have to remove the cahce directory when switching between them 🙃