尝试在python3.5中运行Sanic应用程序的未定义符号

2024-04-26 23:12:47 发布

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

当我尝试使用python3.5运行Sanic应用程序时,我得到以下错误:

Traceback (most recent call last):
  File "api.py", line 1, in <module>
    from sanic import Sanic
  File "/home/shiro/dev/unassociated/user-api/.venv/lib/python3.5/site-packages/sanic/__init__.py", line 1, in <module>
    from sanic.app import Sanic
  File "/home/shiro/dev/unassociated/user-api/.venv/lib/python3.5/site-packages/sanic/app.py", line 14, in <module>
    from sanic.handlers import ErrorHandler
  File "/home/shiro/dev/unassociated/user-api/.venv/lib/python3.5/site-packages/sanic/handlers.py", line 14, in <module>
    from sanic.response import text, html
  File "/home/shiro/dev/unassociated/user-api/.venv/lib/python3.5/site-packages/sanic/response.py", line 3, in <module>
    from ujson import dumps as json_dumps
ImportError: /home/shiro/dev/unassociated/user-api/.venv/lib/python3.5/site-packages/ujson.cpython-35m-x86_64-linux-gnu.so: undefined symbol: Buffer_AppendShortHexUnchecked

它在使用命令virtualenv -ppython3.5 .venv --no-site-packages创建的虚拟环境中运行

我在gentoo上,但我重新编译了所有相关的包,我不知道如何处理这个问题。有人能帮忙吗?在


Tags: infrompydevimportapihomevenv
1条回答
网友
1楼 · 发布于 2024-04-26 23:12:47

我知道这是一次黑客攻击,但这是我在安装Matrix的Synapse服务器(RIOT chat)时解决问题的方法。在virtualenv中,它从pip中提取一个预编译的共享对象。所以我从portage安装了ujson,并在virtaulenv中复制了共享对象。在

我希望这对你有帮助。在

相关问题 更多 >