Cygwin - 使用命令行安装程序安装特定的软件包版本

时间:2014-09-18 12:15:17

标签: cygwin

使用命令行安装程序,可以轻松安装Cygwin,其中包含所需包的列表

setup-x86.exe -q -p='tar,sed,<more packages>'

是否也可以修复软件包的版本,例如

setup-x86.exe -q -p='tar:1.2.3,sed,<more packages>'

(这显然不起作用)?

1 个答案:

答案 0 :(得分:3)

您的查询的简短回答是。 Cygwin的setup -x86.exe不能灵活地指定版本名称和包名称。根据官方文件:

  

没有更全功能的包管理器的基本原因是这样的程序需要完全访问Cygwin的所有POSIX功能。然而,这在诸如第一次安装时存在的无Cygwin环境中难以提供。此外,Windows不容易允许覆盖正在使用的可执行文件,因此在程序包管理器使用DLL时安装新版本的Cygwin DLL是有问题的

如果您想下载特定的软件包,可能会有一些解决方法:

  1. 找到托管特定版本的cygwin镜像。谷歌为您的版本,如果您找到托管该版本的镜像,只需在运行setup -x86.exe之前使用该镜像。 [source]
  2. 维护本地pacakge存储库并使用命令行选项-q -L -l x:\cygwin-local\,您下载的软件包树位于x:\cygwin-local\ [source]。您可以学习如何构建和维护包here
  3. 使用make设置cygwin后编译并安装软件包。