安装后,我想建立软链接到一些由安装创建的配置和数据文件。
如何从软件包的setup.py中确定新软件包文件的安装位置?
最初,我对路径“ /usr/local/lib/python2.7/dist-packages”进行了硬编码,但是当我尝试使用虚拟环境时,该编码就中断了。(由virtualenv创建。)
我尝试了distutils.sysconfig.get_python_lib(),它在virtualenv内部有效。但是,在实际系统上安装时,它会返回“ /usr/lib/python2.7/dist-packages”(请注意,“本地”目录不存在。)
我也尝试过site.getsitepackages():
在基本环境中运行Python Shell:
进口网站
site.getusersitepackages()
'/home/sarah/.local/lib/python2.7/site-packages'
site.getsitepackages()
['/usr/local/lib/python2.7/dist-packages','/usr/lib/python2.7/dist-packages']
从虚拟环境“ testenv”运行Python shell:
进口网站
site.getsitepackages()
追溯(最近一次通话):
文件“”,第1行,在
AttributeError:“模块”对象没有属性“ getsitepackages”
我在Ubuntu上运行“ Python 2.7.3(默认值,2012年8月1日,05:14:39)”和“ [linux2上的GCC 4.6.3]”。我可能可以将一些东西与try-except块拼凑在一起,但似乎应该由distutils / setuptools返回/设置一些变量。(我不知道要使用哪个分支,只要它起作用即可。)
相关分类