我一直尝试在虚拟环境中使用 uWSGI 警报插件,但没有成功。
$ uwsgi --plugin plugins/alarm_xmpp --alarm "jabber xmpp:[email protected];password;[email protected]"
open("plugins/alarm_xmpp_plugin.so"): No such file or directory [core/utils.c line 3659]
plugins/alarm_xmpp_plugin.so: cannot open shared object file: No such file or directory
*** Starting uWSGI 2.0.7 (64bit) on [Wed Oct 22 15:23:59 2014] ***
invalid alarm: jabber xmpp:[email protected];password;[email protected]
显然罪魁祸首是缺少插件。
查看输出pip install uwsgi
显示,许多(但不是全部)插件都静态链接到 uwsgi 二进制文件。其余的插件显然从未构建过。
我该怎么做才能启用所有plugin/alarm_*
插件?
PyPI 中是否有缺少的插件?无论是
pip search
Google 还是其他网站都没有找到可能包含所需文件的软件包。我可以在 pip 下载源包之后但在构建之前编辑 uWSGI 构建配置吗?
还有其他方法可以在虚拟环境中构建和安装插件吗?
如果以上所有方法都失败了,有没有办法在虚拟环境之外构建和安装插件?
答案1
uWSGI 二进制文件能够自行构建插件:
uwsgi --build-plugin <dir>
其中“dir”是包含插件的目录。该过程将以一个 .so 文件结束,您可以使用 --plugin 加载该文件