如何在RPython程序中导入rlib以便使用PyPY的RPython翻译

2 投票
2 回答
788 浏览
提问于 2025-04-16 10:37

我正在尝试在一个程序中进行文件输入输出操作,这个程序是要用pypy的翻译工具来编译的。因为open和os.open这两个方法不被支持,所以我需要使用rlib.streamio。我试着用import rlib来导入,但出现了以下错误:

[translation:ERROR]  ImportError': import statement always raises [type ImportError: 'No module named rlib']

我使用的翻译方式是:

$ ./pypy-1.4.1-src/pypy/translator/goal/translate.py myScript.py

我该如何在myScript.py中导入rlib呢?

2 个回答

0

看起来,pypy的翻译功能会在脚本的路径(或者已经安装的模块)中寻找模块,而不是在它自己的系统里。于是我把rlib这个文件夹复制到了当前目录下,就可以编译了。我只需要

$ cp -r pypy-1.4.1-src/pypy/rlib .

然后

$ ./pypy-1.4.1-src/pypy/translator/goal/translate.py myScript.py

就成功编译了。

4

它是

from pypy.rlib import streamio

撰写回答