是否可以在安装程序生成期间(或在实际安装期间)指定Python模块的自定义路径?举个例子,假设我有5个模块,我使用它生成安装程序:
c:\>python setup.py bdist
所有内容都打包正确,但是当我安装时,我被迫安装到site-packages中。我需要能够指定我的自定义目录(或安装程序的选择)。至少,我需要能够覆盖默认值,以便我的自定义路径显示为默认路径。
这是否可以使用内置发行版?
答案 0 :(得分:11)
您应该编写setup.cfg,您可以在其中指定安装选项(请参阅python setup.py install --help output),然后运行python setup.py bdist。创建二进制发行版时,python将使用此选项在“build”子目录下执行dumb安装,并从此哑安装中创建安装程序。例如,如果要创建将库安装到/ some / lib / path并将脚本安装到/ some / bin / path的bdist,请创建以下setup.cfg:
[install]
prefix=/
install_lib=/some/lib/path
install_scripts=/some/bin/path
然后运行python setup.py bdist
答案 1 :(得分:1)
从正在运行python setup.py --help install
:
Options for 'install' command:
--prefix installation prefix
--exec-prefix (Unix only) prefix for platform-
specific files
--home (Unix only) home directory to install
under
--user install in user site-package
'/home/jterrace/.local/lib/python2.7/si
te-packages'
--install-base base installation directory (instead of
--prefix or --home)
--install-platbase base installation directory for
platform-specific files (instead of --
exec-prefix or --home)
--root install everything relative to this
alternate root directory
答案 2 :(得分:1)
我相信MaxSin的答案有点正确。但是要使用他的命令答案:“python setup.py bdist_wininst”你必须这样做:
[bdist_wininst]
prefix=/
install_lib=/some/lib/path
install_scripts=/some/bin/path
看作语法here是:
[command]
option=value
...
编辑:
看起来这不起作用:(不确定可能的其他解决方案。