我使用的Fedora 15的64位和Python 2.7不能运行,从另外一个Python模块(从Eclipse中运行时)
当我运行python test.py
从命令行它工作得很好 但是当我从另一个运行subprocess.call(["python","test.py"])
我得到的python模块
File "/usr/lib64/python2.7/site.py", line 557, in <module>
main()
File "/usr/lib64/python2.7/site.py", line 539, in main
known_paths = addusersitepackages(known_paths)
File "/usr/lib64/python2.7/site.py", line 268, in addusersitepackages
user_site = getusersitepackages()
File "/usr/lib64/python2.7/site.py", line 243, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/usr/lib64/python2.7/site.py", line 233, in getuserbase
USER_BASE = get_config_var('userbase')
File "/usr/lib64/python2.7/sysconfig.py", line 535, in get_config_var
return get_config_vars().get(name)
File "/usr/lib64/python2.7/sysconfig.py", line 434, in get_config_vars
_init_posix(_CONFIG_VARS)
File "/usr/lib64/python2.7/sysconfig.py", line 287, in _init_posix
raise IOError(msg)
IOError: invalid Python installation: unable to open /usr/local/lib64/python2.7/config/Makefile (No such file or directory)
我该如何解决?
更新:这是从Eclipse运行脚本时得到的堆栈跟踪。
- 当我从CL运行test.py - 它的工作原理
- 当我运行含有
subprocess.call(["python","test.py"])
从CL脚本 - 它也可以 - 当我运行一个包含从Eclipse的
subprocess.call(["python","test.py"])
脚本 - 它失败
是这样文件真的丢失在文件系统上吗?或者它在那里? – mac
是的这个文件是不存在的。实际上它在/usr/lib64/python2.7/config/Makefile 主要问题是:为什么它是从CL运行并且是不是从python模块运行。 – Ilia
不知道为什么它会这样。它看起来像是一个安装问题,也许你可以尝试询问[SuperUser](http://superuser.com/)... – mac