安装gem包em-websocket失败,原生扩展构建报错(make命令未找到)
解决em-websocket gem安装失败的问题
从你给出的报错信息能明显看出,安装卡壳的核心原因是系统里没装make及相关编译工具,导致没法构建http_parser.rb这个依赖的原生扩展——报错里清清楚楚写着:
sh: 1: make: 未找到
下面是具体的解决步骤:
1. 先安装编译工具链
根据你的Linux发行版,选对应的命令安装必要工具:
如果你用Debian/Ubuntu系列(比如Ubuntu 16.04及以上版本)
打开终端,依次跑这两条命令:
sudo apt-get update sudo apt-get install build-essential ruby-dev
build-essential包会把make、gcc这类基础编译工具都装上ruby-dev提供Ruby的开发头文件,是构建原生gem扩展必不可少的
如果你用RHEL/CentOS/Fedora系列
执行下面的命令:
sudo yum groupinstall "Development Tools" sudo yum install ruby-devel
要是你用的是较新版本的Fedora,换成dnf命令就行:
sudo dnf groupinstall "Development Tools" sudo dnf install ruby-devel
2. 重新安装em-websocket
等工具都装完,再试一次安装gem:
gem install em-websocket
这下应该就能顺利完成安装了,缺失的编译工具补全后,http_parser.rb的原生扩展就能正常构建啦。
内容的提问来源于stack exchange,提问作者Thomas Koh
相关产品推荐
相关产品推荐

