根据xmlsec1要求安装pysaml2和pip

2024-05-16 20:32:46 发布

您现在位置:Python中文网/ 问答频道 /正文

是否可以使用pip自动安装PySAML2的xmlsec1需求?在

当前项目需要许多包,并且所有包都是使用pip和requirements.txt文件安装的。我现在正在启动一个samlso实现,需要安装PySAML2。但是,所有的文档都声明xmlsec1需要安装,而{}安装程序没有安装它。在

是否可以使用pip安装xmlsec1?我看到PIL和pycrypto可以成功地安装外部libs,所以我想知道为什么不能使用pip作为PySAML2依赖项的一部分来安装{}。在


Tags: pip文件项目文档txt声明pillibs
2条回答

安装python3saml或PySAML2并在Heroku上运行需要一些额外的工作:这两个包都依赖于pythonxmlsec,而pythonxmlsec依赖于xmlsec1 dev linux包的头文件才能正确安装。在

首先,您需要将apt构建包添加到构建服务器:

heroku buildpacks:set  index=1 -a your-app https://github.com/ABASystems/heroku-buildpack-apt
heroku buildpacks:set  index=2 -a your-app https://github.com/ABASystems/heroku-buildpack-python

您可以用heroku buildpacks -a your-app确认已按正确的顺序添加了构建包,您应该首先看到apt buildpack,然后是python buildpack。在

然后将Aptfile添加到包含libxmlsec1-dev包的存储库的根目录中,该文件应该如下所示:

^{pr2}$

最后,将python3saml添加到需求.txt和git push来触发构建。在

有人需要创建一个包含xmlsec1二进制文件的pypi包。 这样的包还不存在,因为它是:

  1. 相当不自然的-xmlsec1是C应用程序,而不是python库
  2. 很难——它必须是跨平台的,这在C应用程序中比在Python中更麻烦
  3. python绑定应该围绕xmlsec1编写,这样一个包至少与pypi有些关联。在

这应该是不可能的,我希望能够输入“pip install xmlsec1”并看到它完成所有的艰苦工作。不幸的是,到目前为止还没有人费心去实施它。在

相关问题 更多 >