使用setuptools安装sage脚本

时间:2014-11-13 17:34:28

标签: python setuptools sage

我正在尝试使用setuptools为sage脚本构建安装程序。这就是我所拥有的。

我的setup.py文件:

#!/usr/bin/env python2

from setuptools import setup

__name__ = 'sage-test'
__version__ = '0.0'

setup(name=__name__,
      scripts=['sage-test'],
)

sage-test文件:

#!/usr/bin/env sage

from sage.all import GF

print(GF(5))

我现在./setup.py build./setup.py install。当我尝试运行sage-test时,我收到以下错误:

Traceback (most recent call last):
  File "/usr/bin/sage-test", line 4, in <module>
    __import__('pkg_resources').run_script('sage-test==0.0.0', 'sage-test')
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 517, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 1443, in run_script
    exec(script_code, namespace, namespace)
  File "/usr/lib/python2.7/site-packages/sage_test-0.0.0-py2.7.egg/EGG-INFO/scripts/sage-test", line 3, in <module>
    __requires__ = 'sage-test==0.0.0'
ImportError: No module named sage.all

任何想法如何让这个工作? (请注意,我可以在当前目录中运行./sage-test,一切正常。)

1 个答案:

答案 0 :(得分:0)

这可能没有帮助,但这看起来很可疑。

/usr/lib/python2.7/

也许你需要在sage -sh内做所有事情 - 如果有一些未正确设置的env var,我不会感到惊讶。我不确切知道为什么,但也许它以某种方式拾取你的系统Python。