我正在分发一个相当大的C库;作为发行版的一部分,是一个Python包装包。构建系统是cmake
的,make install
应该将Python代码复制到Python路径中的某个位置。根据阅读 Python 文档,已安装的 Python 模块的默认位置为:
${CMAKE_INSTALL_PREFIX}/lib/pythonX.Y/site-packages
但是在基于 Debian 的系统上,此路径不在默认的 Python 搜索路径上,而是搜索路径包含 /usr/local/lib/pythonX.Y/dist-packages
。我希望默认安装"正常工作",并想知道dist-packages
与site-packages
的最佳方法是什么?我目前的计划是:
- 如果在基于 Debian 的系统上 - 安装到
dist-packages
。 - 否则安装到
site-packages
但也许dist-packages
仅适用于带有包管理器的包?
dist-packages仅适用于带有软件包管理器的软件包。
来自 debian 维基 :
dist 包而不是站点包。从 Debian 软件包安装的第三方 Python 软件进入 dist 软件包,而不是站点软件包。这是为了减少系统 Python 与您可能手动安装的任何源 Python 构建之间的冲突。
有关打包 python 模块的信息,请参阅第 2.5 节
不由 python-central 或 python-support 处理的公共 Python 模块必须安装在系统 Python 模块目录中,python2.6 及更高版本的/usr/lib/pythonX.Y/dist-packages 和 python2.5 及更早版本的/usr/lib/pythonX.Y/site-packages 中。公共 Python 3 模块必须安装在/usr/lib/python3/dist-packages 中。