Windows 10上的Cygwin和MinGW

时间:2019-10-18 14:25:12

标签: c windows cygwin mingw

我在Windows 10计算机上已经安装了Cygwin。因为我开始在Windows环境中使用套接字编程,所以我想看看如何使用MinGW。

我在机器上都安装了它们,但是想看看它们之间“热交换”的简单方法。这里有一个先前的问题:GCC on Cygwin coexisting with MinGW,具有以下.cmd文件:

catalina.properties

现在,如果我以管理员身份运行此功能,则会发生一些我目前不了解的事情:

  1. 如果导航到@echo off rem file: start cmd with cygwin's path cmd.exe /k path=C:\cygwin\bin;%path% -没有任何显示...
  2. 但是,如果我只是在cmd提示符下键入control panel -> system -> advanced system settings -> Advanced tab -> Environment Variables -> edit path,则会显示path

所以我想我的问题是:

a。两者之间有什么区别?

b。如果.cmd文件添加了路径项目,取出其中一项的最简单方法是什么?

我的想法是,如果我的路径中没有任何内容,则在cmd提示符下键入C:\cygwin\bin应该会显示错误,由于上面的第2点,该错误目前不存在。

希望我有道理。任何帮助一如既往。
罗布

编辑1: 我发现了以下内容:Command line to remove an environment variable from the OS level configuration

具有以下命令提示符:

gcc --version

这用于删除系统变量REG delete "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /F /V FOOBAR。现在,如果比我有更多经验的人可以指出如何删除系统变量的 part 的方向...

1 个答案:

答案 0 :(得分:0)

1。

有两种不同的PATH,一种是系统范围的路径,另一种是用户使用的路径。后者是根据系统的内容构建的,并通过设置的内容进行扩展。

最终的PATH只是程序启动时的基础。如果CMD执行您的小批量处理,它将C:\cygwin\bin附加到此现有列表中。此PATH仅对此CMD实例有效。

2。

好吧,我没有个好主意...您如何选择要从PATH列表中删除的单个路径?按索引,按内容,按什么?

也许可以使用诸如“ for”之类的现有命令来完成此操作,但是为什么PATH中的路径根本没有?

您希望有两个不同的环境来使用Cygwin或MinGW工具,我建议设置系统和/或用户的基本PATH(通过设置对话框),但不要同时使用两者。然后编写两个小批代码以打开CMD并在相应路径前加上(或者,我更喜欢附加一个)。

顺便说一句,MinGW难道还没有设置开始菜单条目吗?