在节点JS中使用gm模块时,使用NodeJS产生ENOENT错误

我正在使用Linux操作系统在AWS EC2实例上使用gm节点模块。 我的目标是从S3 bucket中裁剪由url提供的图像。我正在对来自S3存储桶的图像url进行http请求以获取缓冲区并将缓冲区值传递给gm模块。 我的代码如下:

gm(buffer).crop(width, height, x, y).toBuffer(imageExtension, function (err, buffer) { if (err) { //error Handling } else { //Some Logic } }); 

当我将缓冲区传递给gm裁剪模块时,我得到了产卵ENOENT错误。

 events.js:85 throw err; // Unhandled 'error' event ^ Error: spawn convert ENOENT at exports._errnoException (util.js:746:11) at Process.ChildProcess._handle.onexit (child_process.js:1053:32) at child_process.js:1144:20 at process._tickDomainCallback (node.js:381:11) 

我参考了堆栈溢出的以下链接以供参考,但无法修复错误。

  1. 错误:在节点中使用GM时产生ENOENT
  2. Node.js:错误:使用GM模块时产生ENOENT
  3. 用NodeJS产生ENOENT错误
  4. nodejs – 错误:在使用模块gm调整图像大小时产生ENOENT

有人可以帮我解决这个问题吗?

为了解决这个问题,我参考了以下关于服务器故障的链接

如何在AWS服务器上使用nodejs和express来正确设置ImageMagick

我运行下面给出的Amazon EC2实例terminal上的命令,并在服务器上安装了linux架构的依赖关系,gm节点模块开始正常工作。

 sudo yum install GraphicsMagick GraphicsMagick-devel ImageMagick