gpt4 book ai didi

python - 打包需要C编译器的Python程序

转载 作者:太空宇宙 更新时间:2023-11-03 15:46:23 25 4
gpt4 key购买 nike

我正在创建并打包一个 Python (2.7) 程序,以在 Amazaon WS 上创建 Lambda 函数。我的程序依赖于 PySha3 package ,它本质上是优化的 Sha3 C 包的 Python 包装器。 Pysha3导入C文件;这两个文件的源代码可以在this Github Repository中看到.

为了将包导入 Lambda 平台,必须压缩并上传整个文件和所有依赖项。当我这样做并尝试在上传后测试包时,我收到一条错误,指出无法找到从 PySha3 包中包含的 C 文件导入的 Sha3 类。根据我自己的研究和故障排除的结果,我决定在程序目录的根目录中安装 Pysha3 轮,我相信这是正确的举动。但是,当我这样做时,我收到以下错误:

enter image description here

我真的希望,如果我能够通过安装 C 编译器来正确安装轮子,并且能够以某种方式将 C 编译器与我的程序打包在一起,那么 Lambda 就能工作。我发现this compiler for Python我希望安装它能够在本地修复我的错误,并且也许将其包含在 zip 文件中能够修复 Lambda AWS 上的错误。

所以,我的问题是,我的思维过程看起来有效吗?另外,有关如何将编译器包含在压缩文件中以便实际使用的任何提示/指导?我对这一切都很陌生,所以任何事情都会有帮助。非常感谢!

最佳答案

为了打包 Lambda 的二进制文件,您需要在正确的环境中构建任何 native 代码。您似乎正在尝试在 Windows 计算机上进行构建 - 即使您的构建成功,生成的二进制文件也不适合 Lambda 执行环境。

当前支持的环境记录在 Lambda Execution Environment 中指南,其中还指出:

If you are using any native binaries in your code, make sure they are compiled in this environment.

关于python - 打包需要C编译器的Python程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41705267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com