Linux下安装Smalltalk环境需按实现选择:GNU Smalltalk(gst)适合脚本执行,用sudo apt install gnu-smalltalk安装;Pharo需官网下载镜像包并手动解压运行;Cuis依赖Java 11+,需下载ZIP并赋予RunCuisOnLinux.sh执行权限。

Linux 下安装 Smalltalk 运行环境,关键取决于你选哪套实现——GNU Smalltalk、Pharo 还是 Cuis Smalltalk。它们互不兼容,安装方式和用途完全不同,不能混用。别指望装一个“Smalltalk”包就万事大吉。
装 GNU Smalltalk(gst):适合脚本式执行和学习语法
这是最轻量、最接近传统命令行工具的选项,适合写 .st 文件然后一次性执行,比如 gst helloworld.st。
- Ubuntu/Debian 系统直接运行:
sudo apt install gnu-smalltalk - 验证是否可用:
gst --version应输出类似GNU Smalltalk 3.2.5 - 注意:
gst不带 IDE、不支持对象探查、没有图形界面,也不加载.image镜像;它只解析并执行文本脚本 - 常见坑:某些发行版(如 Fedora)需启用 EPEL 源才能装
gnu-smalltalk;RHEL/CentOS 8+ 默认仓库已移除该包,得手动编译或换源
装 Pharo:适合交互式开发和现代 Smalltalk 工作流
Pharo 是当前最活跃的开源 Smalltalk 实现,带完整 IDE、调试器、对象浏览器,但安装方式不是系统包管理器,而是下载预编译镜像包。
- 去官网 pharo.org/download 下载 Linux 版本(通常是
PharoLauncher或直接下载Pharo-XX.x-xxbit-Linux.zip) - 解压后运行
./pharo启动 launcher,再新建或打开 image;不要试图用apt或dnf安装“pharo”,官方不提供系统包 - 若想命令行调用(如 Sublime Text 构建系统需要),把
pharo可执行文件路径加进$PATH,或在构建系统里写绝对路径,例如:/home/user/Pharo/v11.0.0/pharo - 常见坑:启动失败常因缺少
libgl1或libxcursor1(Ubuntu/Debian 下装sudo apt install libgl1 libxcursor1即可);ARM64 架构需确认下载的是对应版本,x86_64 镜像在 ARM 上跑不了
装 Cuis Smalltalk:适合想避开 Pharo 复杂生态的极简主义者
Cuis 是更精简、更易读的 Smalltalk 实现,启动快、依赖少,但社区小、文档少,适合实验或教学场景。
- 从 GitHub 仓库
Cuis-Smalltalk-Dev下载 ZIP 包,解压到本地目录 - 给
RunCuisOnLinux.sh加执行权限:chmod +x RunCuisOnLinux.sh - 运行:
./RunCuisOnLinux.sh—— 它会自动拉起 VM 并加载默认 image - 注意:Cuis 不依赖系统级安装,所有文件都在解压目录内;但它需要 Java 运行时(JRE 11+),运行前先确认
java -version输出 ≥11 - 常见坑:如果报错
No Java runtime present或Could not find Java,说明系统没装 JRE,或JAVA_HOME未设对;别用 OpenJDK 8,Cuis 要求至少 JRE 11
选哪个其实取决于你接下来要干什么:写几行 demo 脚本就跑,用 gst;想真正写 Smalltalk 应用、调试、重定义方法,必须上 Pharo;想看 Smalltalk 最朴素的样子、不被太多抽象裹挟,试试 Cuis。别在同一个项目里混搭多个实现,它们的语法、标准库、甚至消息分派规则都有差异。


















