安装web3、ganache-cli与mocha时遇错误:C编译器无法生成可执行文件
解决npm安装scrypt时出现"C compiler cannot create executables"错误的方案
我之前也碰到过一模一样的问题,这其实是因为你的系统缺少编译scrypt所需的C语言开发工具链,下面是几个靠谱的解决办法:
针对Mac系统(你的路径显示是Mac环境)
- 安装Xcode命令行工具:在终端直接运行以下命令,按照弹出的提示完成安装即可:
这个工具包包含了gcc、make等编译scrypt必须的基础工具。xcode-select --install - 若已安装Xcode但问题依旧,尝试重置Xcode路径后重启终端:
之后重新运行你的安装命令。sudo xcode-select --reset
针对Linux系统(补充参考)
如果是Ubuntu/Debian类系统,直接安装编译工具集:
sudo apt-get update && sudo apt-get install build-essential
这个包会自动安装gcc、g++、make等全套编译工具。
备选方案:使用预编译的scrypt包
如果不想安装编译工具,或者上述方法无效,可以尝试跳过源码编译,直接使用预编译版本:
- 先卸载之前失败的scrypt安装残留:
npm uninstall scrypt - 重新运行你的安装命令并添加跳过源码编译的参数:
npm install --save mocha ganache-cli web3@1.0.0-beta.26 --build-from-source=false
额外排查建议
如果还是无法解决,可以查看错误提示里提到的config.log文件(路径:/Users/rohitgoud/node_modules/scrypt/scrypt/scrypt-1.2.0/config.log),里面会记录更详细的编译失败原因,比如是否缺少某个依赖库,能帮你精准定位问题。
内容的提问来源于stack exchange,提问作者Rohit Goud
相关产品推荐
相关产品推荐

