为了获得Pypy
的沙盒版本,首先我使用以下指令从源代码构建Pypy
:
pypy ../../rpython/bin/rpython -O2 --sandbox targetpypystandalone
(然后我将Pypy-c
重命名为Pypy-c-sandbox
)
测试时:
^{pr2}$它正常工作,但当我想使用以下命令运行沙盒版本时:
./pyinteractive.py ../goal/pypy-c-sandbox
出现以下错误:
[platform:execute] gcc -shared /tmp/usession-release-2.5.1-15/module_cache/module_0.o /tmp/usession-release-2.5.1-15/module_cache/module_1.o /tmp/usession-release-2.5.1-15/module_cache/module_2.o /tmp/usession-release-2.5.1-15/module_cache/module_3.o -pthread -Wl,--export-dynamic -lrt -o /tmp/usession-release-2.5.1-15/shared_cache/externmod.so
TypeError: compile() expected string without null bytes
我该怎么解决这个问题?在
你误读了文档:不是
pyinteractive.py path/to/pypy-sandbox
。它是pypy_interact.py path/to/pypy-sandbox
(来自pypy/sandbox/)。在在沙盒中工作的模块数量非常有限。最近,甚至连
time
模块都停止在那里工作,因此被删除了。我们欢迎贡献,但更多的是“持续支持”,这将包括对更多模块和更好的pypy_interact.py
的特殊支持-目前的仅用于演示目的。在相关问题 更多 >
编程相关推荐