Gatsby5配套gatsby-plugin-image在Catalina报错,求可行解决方案
解决方案:Gatsby 5 + gatsby-plugin-image 在 macOS Catalina 10.15 下的运行错误
错误原因
你遇到的 _pthread_jit_write_protect_supported_np 符号缺失错误,是因为 gatsby-plugin-image 依赖的 sharp 库(从特定版本开始)要求 macOS Big Sur 11.0 及以上系统,而该符号仅在 Big Sur 及更高版本的 libSystem.B.dylib 中存在,Catalina 10.15 不支持。
可行解决办法
1. 强制降级 sharp 到支持 Catalina 的版本
sharp 0.30.x 及更早版本兼容 macOS Catalina。你可以通过包管理器强制指定该版本:
- 如果使用 npm(8.x 及以上),在
package.json中添加overrides字段:
{ "overrides": { "sharp": "0.30.7" } }
- 如果使用 yarn,添加
resolutions字段:
{ "resolutions": { "sharp": "0.30.7" } }
然后执行 npm install 或 yarn install 重新安装依赖,之后再运行 npm run develop。
2. 降级 Gatsby 版本(备选)
如果你不需要 Gatsby 5 的新特性,可以降级到 Gatsby 4.x 版本,它对系统版本要求更低,对应的依赖库也兼容 Catalina。执行以下命令:
npm install gatsby@4.x
同时确保 Node.js 版本符合 Gatsby 4 的要求(14.15.0 或更高)。
3. 升级 macOS 到 Big Sur 或更高版本(官方推荐)
这是彻底解决问题的方案,升级后不仅能解决当前依赖库的兼容性问题,还能获得系统安全更新和更好的性能。
内容的提问来源于stack exchange,提问作者Refael
相关产品推荐
相关产品推荐

