Vercel - 未找到“ZLIB_1.2.9”

kee*_*n3d 5 canvas node.js npm vercel

我正在尝试在 Vercel 上的无服务器功能中使用画布,但遇到了一个错误,我不知道如何解决:

Error: /lib64/libz.so.1: version ZLIB_1.2.9' 未找到(/var/task/api/node_modules/canvas/build/Release/libpng16.so.16 需要)`

我的 package.json 中有这个,但它似乎安装了 zlib 1.2.7:

  "scripts": {
    "vercel-build": "yum install libuuid-devel libmount-devel zlib && cp /lib64/{libuuid,libmount,libblkid,libz}.so.1 node_modules/canvas/build/Release/"
  },
Run Code Online (Sandbox Code Playgroud)

正如我在构建日志中看到的那样zlib-1.2.7-18.amzn2.x86_64 already installed and latest version

我该如何安装 1.2.9?

Nna*_*ugo 0

我不知道您是否找到了解决方案,但如果这对任何人都有用,请降级canvasv2.6.1对我的情况有所帮助。降级画布可能还需要使用node 14x而不是node 16或更高版本,因为node-gyp如果您尝试安装或更高版本,往往会引发canvas 2.6.1错误node 16

还可能希望将构建命令附加到附加 vercel 脚本。喜欢:"yum install libuuid-devel libmount-devel zlib && cp /lib64/{libuuid,libmount,libblkid,libz}.so.1 node_modules/canvas/build/Release/ && npm run build"