cmatrix 在 CentOS 上一启动就闪退,通常不是程序本身 bug,而是环境或依赖问题。常见原因和排查方法如下:
cmatrix 需要 交互式 TTY:
cron、systemd service、nohup & 中运行 → 直接退出✅ 检查:
tty
正常应为:
/dev/pts/0
或
/dev/tty1
CentOS 默认可能没装完整 ncurses。
✅ 安装依赖:
yum install -y ncurses ncurses-devel
如果是自己编译的 cmatrix:
yum install -y gcc make ncurses-devel
从源码编译时:
--with-curses✅ 推荐编译方式:
./configure --with-curses
make
make install
cmatrix
如果瞬间退出且没任何提示,通常是 TTY 问题。
strace cmatrix
常见现象:
ioctl(... TCGETS) failed → 不是终端SIGSEGV → 编译或库问题cmatrix; echo $?
130 → 被 Ctrl+C 或 TTY 关闭139 → 段错误cmatrix 默认:
q 退出✅ 加大终端窗口再试
某些最小化 CentOS:
locale
如果不是 UTF-8,建议:
export LANG=en_US.UTF-8
yum install -y epel-release
yum install -y cmatrix
或
dnf install -y cmatrix
CentOS 上 cmatrix 闪退,90% 是“不是真终端”或“ncurses 没装好”。
如果你愿意,可以告诉我:
我可以直接帮你定位到具体原因。