如何告诉Python disutils.core设置函数安装在不同的根目录下



我有这个Python脚本:

#!/usr/bin/env python
from distutils.core import setup, Extension
MOD = 'sysinfo'
setup(
name=MOD, 
ext_modules=[
Extension(
MOD, 
sources=['python_module.c']
)
]
)

当我运行它时,我得到:

$./setup.py install
running install
running build
running build_ext
running install_lib
copying build/lib.linux-x86_64-2.7/sysinfo.so -> /usr/lib64/python2.7/site-packages
error: /usr/lib64/python2.7/site-packages/sysinfo.so: Permission denied

很自然,我不想也没有权限写/usr目录。相反,我想安装到另一个目录,在这个目录下我有一个linux目录结构。比方说,我想安装到/home/mark/usr/lib64/python2.7/site-packages

我研究了distutils.core文档,并使用了--help,但找不到任何安装在其他根目录下的选项。

怎么做?

./setup.py install在您的python安装中将包安装到全局site-packages/中,使其对系统的所有用户都可用。

./setup.py install --user将软件包安装到您家中的本地site-packages/(~/.local/lib/pythonX.Y/site-packages/(中,使其仅对您可用。

./setup.py install --root ~/custom/directory/

安装到CCD_ 10中。

最新更新