distutils 文档指定当 data_files 的目标目录是相对路径时,文件将相对于sys.prefix
. 在我的系统(Linux Mint)上,这是/usr
; 但是,data_files 改为安装到/usr/local
.
我怎样才能在不失去跨平台支持的情况下纠正这个问题?
distutils 文档指定当 data_files 的目标目录是相对路径时,文件将相对于sys.prefix
. 在我的系统(Linux Mint)上,这是/usr
; 但是,data_files 改为安装到/usr/local
.
我怎样才能在不失去跨平台支持的情况下纠正这个问题?
这是一个与 Ubuntu / Linux mint 相关的问题,它们默认为/usr/local
而不是/usr
.
首先,您应该检查用于运行设置脚本的 Python 的 sys.prefix。
其次,检查 distutils 配置文件(一个是 Python 标准库目录中的 distutils.cfg(我知道),另一个是 ~/.pydistutils.cfg,最后一个是 setup.py 后面的可选 setup.cfg)。
Are you trying to 1) install someone else's program or 2) write a setup.py yourself?
If 1), are you appending --prefix=/usr/local
when invoking python setup.py
? If so, installation prefix will become /usr/local
, to which the data files will be installed relative.
If 2), check out the value of sys.prefix
& sys.exec_prefix
(or post the relating part of your setup.py).