我想部署和测试我的Lambda函数,但是,每次我尝试这样做时,我都会收到以下错误消息:
2019-11-11 13:25:33 Mounting /tmp/tmphebm3s_4 as /var/task:ro,delegated inside runtime container
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_dnn.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_video.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_objdetect.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_features2d.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_imgproc.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libopencv_core.so.4.1)
/var/task/bin/inference: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/lib/libinference_engine.so)
/var/task/bin/inference: /lib64/libdbus-1.so.3: no version information available (required by /opt/lib/libatk-bridge-2.0.so.0)
^C/var/task/bin/inference: /lib64/libdbus-1.so.3: no version information available (required by /opt/lib/libatspi.so.0)
Makefile:85: recipe for target 'run-inference' failed
请注意,inference
是我的Lambda函数的名称二进制。
我发现了这个链接:https://aws.amazon.com/premiumsupport/knowledge-center/lambda-linux-binary-package/,它允许我使用Amazon来创建适合Lambda函数执行环境的部署包。
我的计划是将代码复制到EC2实例中,并使用安装在其上的GLIBC版本构建它。我认为这会解决上述问题。
问题是,一旦我SSH到EC2实例,如何将我的代码复制到它,然后构建它?我不是linux方面的专家,所以这让我有点困惑。
提前感谢!
发布于 2022-01-02 01:10:26
我在创建要部署在AWS中的Rust二进制文件时出现了此错误。
我使用cross
解决了这个GitHub 评论中的问题。
我执行了以下两个步骤来解决这个问题:
cargo install cross
cross build --release --target x86_64-unknown-linux-gnu
编译项目https://stackoverflow.com/questions/58801555
复制相似问题