安下载(俺下载):打造放心的绿色安全下载站! 安下载首页|软件分类|最近更新

所在位置: 首页  >  电脑软件  >  编程开发  >  编程工具 > Cygwin(UNIX环境模拟软件) v2.873 官方版(附安装教程)
Cygwin(UNIX环境模拟软件)

Cygwin(UNIX环境模拟软件)

 v2.873 官方版(附安装教程)
  • 软件大小:1.6 MB
  • 更新日期:2019-09-19 18:51
  • 软件语言:简体中文
  • 软件类别:编程工具
  • 软件授权:免费版
  • 软件官网:
  • 适用平台:WinXP, Win7, Win8, Win10, WinAll
  • 软件厂商:

6
软件评分

本地下载文件大小:1.6 MB

软件介绍 人气软件 下载地址

为您推荐: 编程开发

  Cygwin是一款功能强大的UNIX环境模拟软件,有了这款软件,用户可以在您的windows系统上模拟UNIX环境,从而协助用户在windows上直接运行Linux应用程序,并执行您所需要的任何操作,而且具备了优越的兼容性,而且软件为用户提供了丰富的GNU和开源工具,能够为您执行需要的开发操作,这款应用程序在安装上相对复杂,但是有向导式的操作选项供您选择,您可以按照向导提示完成所有安装步骤,安装完成后使用就没有太大的困难了,有需要的用户赶紧下载吧!

Cygwin(UNIX环境模拟软件)

软件功能

  Cygwin包含各种工具和库的集合,旨在在Windows操作系统上提供类似Linux的环境。它充当仿真层,可以在Microsoft Windows上运行本机Linux应用程序。

  在Windows上运行为Linux开发的应用程序

  Cygwin最初由Cygnus Solutions开发,但在2000年被Red Hat收购,它主要致力于为程序员提供一种简单的方法,为最初为Linux环境开发的应用程序提供Windows兼容性。成功移植的Unix应用程序的一些例子是KDE,GNOME和Apache。

  包中包含的组件

  Cygwin包含一个DLL,其目的是提供POSIX API功能,以及一组能够在Windows计算机上容纳Unix外观的实用程序。诸如syslogd,inetd,crond和几个这样的守护进程之类的组件被部署为服务,从而使Windows能够以Linux方式运行。

软件特色

  作为如此复杂的应用程序,预计会进行复杂的安装。部署需要多个用户干预,以及用于从专用服务器下载文件的有效Internet连接。

  建议用户注意他们在设置过程中选择的包; 组件越多,安装过程就越长。默认情况下,选择是最小的,只包括bash shell,以及Unix命令行中常见的核心实用程序。

  其他组件,如终端(mintty,util-linux),文本实用程序(grep,diff,patch),shell(dash,zsh,tcsh),服务器(Apache,PostgreSQL,OpenSSH)和其他与开发相关的实用程序可用于可选包。

  但是,默认选择应足以编译源代码,以生成与Windows兼容的GUI或控制台应用程序。毕竟,Cygwin的美妙之处在于开发人员无需对代码进行大量更改,但很少进行调整和添加。

安装方法

  1、下载并解压软件,双击Cygwin安装程序可进入如下的向导界面,单击【下一步】按钮。

Cygwin(UNIX环境模拟软件)

  2、选择下载源,选择是从Internet安装还是从Internet下载,或从本地目录中的文件安装。

Cygwin(UNIX环境模拟软件)

  3、选择Root安装目录,选择要安装Cygwin的目录。还要选择一些安装参数。

Cygwin(UNIX环境模拟软件)

  4、选择本地包目录,选择您希望安装程序存储其下载的安装文件的目录。 如果目录尚不存在,将创建该目录。

Cygwin(UNIX环境模拟软件)

  5、选择您的Internet连接设置,需要知道您希望它如何连接到Internet, 选择下面的相应设置。

Cygwin(UNIX环境模拟软件)

  6、进展,此页面显示下载或安装的进度。

Cygwin(UNIX环境模拟软件)

  7、选择下载站点,从此列表中选择站点,或将您自己的站点添加到列表中。

Cygwin(UNIX环境模拟软件)

  8、正在执行下载操作。

Cygwin(UNIX环境模拟软件)

  9、安装设置,用户按照提示进行设置。

Cygwin(UNIX环境模拟软件)

使用说明

  下载源代码

  Cygwin使用包来管理安装各种软件。Install from Internet选择默认选项后, setup.exe会在实际安装内容之前创建一个本地目录来存储包。 Download from Internet仅执行第一部分(在本地存储包),而 Install from Local Directory仅执行第二部分(安装包的内容)。

  该Download from Internet选项主要用于在一台计算机上创建基础Cygwin包树,以便在多台机器上安装 Install from Local Directory; 将整个本地包树复制到另一台机器,目录树完好无损。例如,您可以创建一个C:\cache\ 目录并在其中放置setup.exe。将setup.exe运行 到Install from Internet 或Download from Internet,然后将整个复制 C:\cache\到每台计算机,而是选择 Install from Local Directory。

  虽然这提供了一些基本的镜像功能,但如果您正在管理大型Cygwin安装,为了保持最新,我们建议使用镜像工具,如wget。Cygwin邮件列表上一位有用的用户创建了一个简单的演示脚本来完成此任务; 在mkcygwget列表中搜索想法。

  选择安装目录

  在Root Directory为Cygwin的(默认 C:\cygwin)将成为/ 您的Cygwin安装中。您必须具有对父目录的写访问权限,并且父目录上的任何ACL将确定对已安装文件的访问权限。

  该Install For选项All Users 或Just Me应始终留在默认情况下 All Users,除非你没有写访问 HKEY_LOCAL_MACHINE注册表或所有用户开始菜单。即使您是计划在计算机上使用Cygwin的唯一用户,也是如此。选择Just Me将导致crond和sshd等程序出现问题。如果您没有必要的权限,但仍想使用这些程序,请查阅Cygwin邮件列表档案,了解其他人的经历。

  本地包目录

  这Local Package Directory是setup.exe在安装包之前存储包的缓存 。缓存不能与Cygwin根目录相同。在缓存中,为每个Cygwin镜像创建一个单独的目录,这允许setup.exe使用多个镜像和自定义程序包。安装Cygwin后,不再需要缓存,但您可能希望将软件包保留为备份,将Cygwin安装到其他系统,或者需要重新安装软件包。

  连接方法

  该Direct Connection下载的方法将直接连接。如果您的系统配置为使用代理服务器或自动配置脚本,则该Use System Proxy Settings 方法将使用这些设置。或者,您可以在该Use HTTP/FTP Proxy部分中手动输入代理设置。

  选择镜像

  由于无法知道您将从何处下载Cygwin,因此您需要选择至少一个镜像站点。Cygwin镜子在地理上分布在世界各地; 查看https://cygwin.com/mirrors.html 上的列表以查找您附近的列表 。您可以通过按住CTRL并单击每个镜像来选择多个镜像 。如果您具有未列出镜像的URL(例如,如果您的组织具有内部Cygwin镜像),则可以添加它。

  选择包

  对于每个选定的镜像站点,setup.exe会下载一个名为的小文本文件setup.bz2,其中包含该站点提供的软件包列表以及setup.exe解析并用于创建选择器窗口的每个软件包的一些基本信息。有关此文件格式的详细信息,请参阅 setup.exe主页。

  选择器是setup.exe中最复杂的部分。包被分组到类别中,并且一个包可以属于多个类别(由志愿者包维护者分配)。可以在分层选择器视图中的任何类别下找到每个包。默认情况下,setup.exe 将仅安装Base类别及其依赖项中的软件包,从而导致最小的Cygwin安装。但是,这不包括许多常用的工具,例如 gcc(您可以在Devel 类别中找到)。由于setup.exe会自动选择依赖项,因此请注意不要取消选择任何所需的包。特别是,该Base类别中的所有内容都是必需的。

  您可以更改setup.exe的视图样式,如果您知道要安装的软件包的名称但不知道它所属的类别,这将非常有用。单击View按钮,它将在Category(默认)之间旋转 ,Full(所有包),和Pending(只有要安装,删除或升级的包)。如果您熟悉Unix,您可能希望至少浏览一下Full您喜爱的工具的列表。

  一旦安装了现有的Cygwin,setup.exe 选择器也可用于管理Cygwin安装。有关已安装软件包的信息保存在 /etc/setup/Cygwin安装目录中; 如果 setup.exe找不到此目录,它将表现为没有安装Cygwin。如果setup.exe 找到可用的已安装软件包的较新版本,它将自动将其标记为要升级。要Uninstall,Reinstall或获取 Source现有包,请单击 Keep以切换它。此外,为避免升级后需要重新启动,请确保在setup.exe开始安装升级的软件包之前关闭所有Cygwin窗口并停止所有Cygwin进程 。

  为避免无意中升级,请使用Pending 视图查看已标记要升级的软件包。如果您不想升级软件包,请单击新版本号以进行切换,直到它显示为止Keep。通过按下Keep 选择器窗口右上角的按钮,可以将所有包设置为保持安装的版本。

  通常可以使用每个软件包的先前版本,以防需要降级以避免当前版本的软件包中存在严重错误。软件包偶尔也会提供测试(或“实验”)版本。可以通过单击包的New列来选择以前版本和实验版本, 直到出现所需的版本。

  可以通过按下Exp选择器窗口右上角的部分来选择所有可用的实验包 。但是,请注意,下次运行setup.exe时, 它会尝试用当前版本替换所有旧版本或实验版本,除非另有说明。

  下载和安装进度

  首先,setup.exe会将所有选定的软件包下载到之前选择的本地目录中。在安装之前, setup.exe会对每个程序包执行校验和。如果本地目录是慢速介质(例如网络驱动器),则可能需要很长时间。在下载和安装期间,setup.exe 显示当前任务的进度条和剩余磁盘空间总量。

  快捷键

  您可以选择在桌面和/或“开始”菜单上安装“Cygwin Terminal”快捷方式。这些快捷方式运行mintty,它将启动您指定的默认shell /etc/passwd。

  安装后脚本

  最后,setup.exe将运行任何安装后脚本以完成正确设置已安装的软件包。完成上一个安装后脚本后,setup.exe 将显示一个宣告完成的框。一些软件包(例如OpenSSH服务器)需要一些手动特定于站点的配置。相关文档可以在/usr/doc/Cygwin/ 或/usr/share/doc/Cygwin/目录中找到。

  故障排除

  不幸的是,复杂的设置过程意味着可能出现奇怪的问题。如果您在下载软件包时遇到问题,可能是网络拥塞,请尝试使用其他镜像和/或不同的协议(即HTTP而不是FTP)。如果在运行安装程序后发现某些内容无法正常工作,则可以在以下位置检查setup.exe日志文件/var/log/setup.log.full。在再次运行setup.exe之前备份此文件,并按照报告Cygwin问题的步骤进行操作。

常见问题

  Cygwin自动化安装怎么样?

  Cygwin安装程序旨在实现交互式,但有几种不同的自动化方法。如果要部署到多个系统,最好的方法是完成一次完整安装,保存整个下载的包树。然后,在目标系统上,运行Cygwin Setup作为指向下载的包树的“本地安装”。您可以使用命令行选项以非交互方式执行此操作 -q -L -l x:\cygwin-local\,其中包含已下载的包树x:\cygwin-local\。

  如果安装失败怎么办?

  首先,确保您使用的是最新版本的Cygwin Setup。最新版本始终可从Cygwin主页 https://cygwin.com/获得。

  如果从Internet下载,如果无法通过https://cygwin.com/mirrors.html下载镜像列表,则安装将失败。可能是网络太忙了。类似的东西可能是下载站点无法正常工作的原因。尝试另一面镜子,或稍后再试。

  如果安装程序拒绝下载您知道需要升级的软件包,请尝试从/ etc / setup中删除该软件包的条目。如果您对邮件列表上的公告做出快速反应,可能是您正在使用的镜像尚未拥有最新版本。尝试另一面镜子,或明天再试一次。

  如果安装程序已另有奇怪的表现,检查文件 setup.log和setup.log.full中 /var/log(C:\cygwin\var\log默认情况下)。它可能提供一些线索,说明出了什么问题以及原因。

  如果您仍然感到困惑,请在Cygwin邮件列表中搜索线索。其他人可能会遇到同样的问题,并且可能会在那里发布解决方案。如果该搜索证明没有结果,请向Cygwin邮件列表发送查询。您必须在查询中提供完整的详细信息:安装版本,您选择的选项,setup.log和setup.log.full的内容,发生的事情不应该发生,等等。、

  的Windows登录名中有一个空格,这会导致问题吗?

  绝对肯定是!UNIX shell(以及Cygwin)使用空格字符作为单词分隔符。在某些情况下,可以通过各种shell引用机制解决这个问题,但如果你可以完全避免这个问题,你会好得多。

  你有两个选择:

  您可以在Windows用户管理器GUI中重命名用户。

  如果这不可能,您可以使用mkpasswd命令创建/ etc / passwd文件。然后您可以简单地编辑您的Cygwin用户名(第一个字段)。避免在主目录中使用空格也是个好主意。

  如何卸载单个包?

  像安装软件包一样运行Cygwin Setup。在要安装的软件包列表中,浏览相关类别或单击“查看”按钮以获取完整列表。单击循环标志符号,直到操作显示“卸载”。单击“下一步”继续。

  什么Cygwin突然这么慢?

  如果突然每个命令都需要 很长时间,那么可能会尝试访问网络共享。您可能//c 在PATH或启动文件中有过时的表示法。使用//c手段联系网络服务器 c,如果它不存在,将大大减慢速度。

  为什么我的服务无法访问网络共享?

  如果您的服务是切换用户上下文(sshd,inetd等)的服务之一,那么它取决于用于切换到另一个用户的方法。Cygwin用户指南中详细介绍了此问题及其解决方案,请参阅 https://cygwin.com/cygwin-ug-net/ntsec.html。

  解决方法包括使用不需要身份验证的公共网络共享(对于非关键文件),为net use命令提供密码 ,或者以自己的用户身份运行服务cygrunsrv -u(/usr/share/doc/Cygwin/cygrunsrv.README有关详细信息,请参阅 参考资料)。

  我该如何设置PATH?

  这是在文件/ etc / profile中为您完成的,当您从桌面或开始菜单快捷方式启动时,它由bash提供 setup.exe。这条线是

  PATH = “在/ usr / local / bin目录:在/ usr / bin中:/ bin中:$ PATH”

  实际上,这会将 / usr / local / bin和/ usr / bin添加到Windows系统路径中。如果您选择重置PATH,例如在$ HOME / .bashrc中,或者直接编辑etc / profile,那么您应该遵循此规则。你必须有/usr/bin你的PATH 之前,任何Windows系统目录。(并且您不能省略Windows系统目录!)否则您可能会遇到运行Cygwin应用程序的各种问题。

  如果你使用的是另一个shell而不是bash(比如说tcsh),那么机制是相同的,只是登录脚本的名称是不同的。

  为什么bash在启动时没有读取我的.bashrc文件?

  从HOME环境变量指定的主目录中读取.bashrc。如果未设置HOME,则使用/.bashrc。因此,您需要正确设置HOME(以及您的密码帐户信息中的主目录)。

  如何让bash文件名完成不区分大小写?

  将以下内容添加到您的~/.bashrc文件中:

  shopt -s nocaseglob

  并将以下内容添加到您的~/.inputrc文件中:

  设置完成 - 忽略 - 案例

  我可以使用包含空格的路径/文件名吗?

  Cygwin支持文件名和路径中的空格。也就是说,一些使用该库的实用程序可能不会,因为文件通常不包含Unix中的空格。如果您遇到此问题,则需要修复实用程序或停止在Cygwin工具使用的文件名中使用空格。

  特别是,bash将空间解释为单词分隔符。您必须引用包含空格的文件名,或者转义空格字符。例如:

  bash-2.03 $ cd'/ cygdrive / c / Program Files'

  要么

  bash-2.03 $ cd / cygdrive / c / Program \ Files

  为什么我不能进入目录的快捷方式?

  Cygwin不遵循MS Windows资源管理器快捷方式(* .lnk文件)。它将快捷方式视为常规文件,并且您无法“cd”到其中。

  Cygwin还能够将POSIX符号链接创建为Windows快捷方式(请参阅CYGWIN环境变量选项“winsymlinks”),但这些快捷方式与本机Windows应用程序创建的快捷方式不同。Windows应用程序通常可以使用Cygwin快捷方式,但反之亦然。这是选择。原因是Windows快捷方式可能包含一些额外的信息,例如,如果Cygwin tar归档并将其作为符号链接提取,那么这些信息就会丢失。

  在Windows资源管理器中更改Cygwin快捷方式通常会将Cygwin快捷方式更改为Windows本机快捷方式。之后,Cygwin将不再将其识别为符号链接。

更新日志

  什么是新的:

  新API:timingsafe_bcmp,timingsafe_memcmp

  新API:dladdr

  新API:getloadavg

  改变了什么:

  cygcheck和strace现在总是使用Unix LF行结尾生成输出,而不是使用DOS / Windows CR LF行结尾。

  fork现在保留了不相关的dlopen'd模块的加载顺序。

  pthread_cond_wait现在就像Linux和BSD一样:继续等待条件变量,好像它没有被中断,而不是返回0。

  内部标头已重命名为,以便与其他系统进行源兼容。

  尝试更加支持Netapp驱动器。

  Bug修复:

  修复了一些问题,这些问题是从pthread递归调用时失败的组合罪魁祸首。

  修复getrandom中潜在的缓冲区溢出。

  修复write(2)写入返回值> 2 GB。

  解决方法Windows NUL具有相同的写入问题> 4 GB。

  修复duplocale中的潜在崩溃。

  修复dlopen / dlclose引用计数以确保在分叉进程中过早调用FreeLibrary。

  修复cygserver中的并发问题。

下载地址

人气软件