【问题标题】:Windows Terminal and (MinGW, Cygwin) [closed]Windows 终端和(MinGW,Cygwin)[关闭]
【发布时间】:2019-09-29 19:46:07
【问题描述】:

微软似乎要引入“Windows Terminal”,见https://devblogs.microsoft.com/commandline/introducing-windows-terminal/ 看来你可以用 C 语言编程了。

我正在考虑安装 MinGW 或 Cygwin 以便我可以用 C 编写一些程序。Windows Terminal 的引入会使这些变得多余吗?

【问题讨论】:

  • 为了记录,你可以在没有终端程序的情况下用 C 语言为 Windows 编程。查看Visual Studio Comunity Edition。如果您想创建一个命令行程序,请随意指定“控制台应用程序”作为项目类型。相信我,使用 Visual Studio 进行调试会比使用基于终端的工具更容易。
  • 赞成。问题的 C 部分编程是一锅好鱼,但实际上我认为它有一些优点。这些其他工具的存在是有原因的。目前,我需要使用 cygwin 的 mintty 和 xterm 来管理我使用的各种不同的编程环境。我试过 ConEMU 来管理它们,但它相当笨重。使用这个新的 Windows 终端将虚拟 tty 连接到 Cygwin 和/或 Msys2 shell,如 zsh 和 bash,是我感兴趣的一个很好的用例,这是除了 WSL 和 Windows Conhost 等广告之外的用例等

标签: windows cygwin windows-terminal


【解决方案1】:

如所述:https://github.com/microsoft/terminal/blob/master/doc/user-docs/ThirdPartyToolProfiles.md

假设您已将 Cygwin 安装到 C:/Cygwin:

{
    "guid": "{916f2925-597a-4b52-aac2-9a4387626b4c}",
    "name" : "Cygwin",
    "commandline" : "C:/Cygwin/bin/bash --login -i",
    "icon" : "C:/Cygwin/Cygwin.ico",
    "startingDirectory" : "C:/Cygwin/bin" 
}  

请注意,Cygwin 的起始目录已按原样设置,以使路径正常工作。启动 Cygwin 时打开的默认目录将是 $HOME,因为 --login 标志。

仅供参考:使用 Cygwin64 在我的 PC 上进行以下工作:

{
    "guid": "{379bd4d8-dc40-409a-abd4-3ff1712c12f7}",
    "name" : "Cygwin",
    "commandline" : "c:/cygwin64/bin/bash --login -i",
    "icon" : "c:/cygwin64/Cygwin.ico",
    "startingDirectory" : "c:/cygwin64/bin"
}

【讨论】:

  • guid 不是强制性的:我不使用它。
  • @emmguyot 如果要将其设置为默认配置文件,则需要 GUID。
  • @AlexanderRevo 可以使用名称设置默认配置文件,例如:“defaultProfile”:“Cygwin”
  • @emmguyot 我在发表评论之前尝试过,但收到一条错误消息,告诉我“检查以确保“defaultProfile”与您的一个配置文件的 GUID 匹配”。但你猜怎么着——结果你是对的,错误信息是错误的,问题是我输入了cygwin而不是Cygwin,而且显然个人资料名称是区分大小写的。
  • @AlexanderRevo 太好了,我的 cmets 帮助了你。您可以使用“向上箭头”将评论标记为有用
【解决方案2】:

正如Seva Alekseyev 所指出的,您不需要终端程序来编写C 程序。您也不需要 Cygwin 或 MinGW 来编写它们。但是,要回答所提出的问题,新的 Windows 终端似乎将允许您启动各种 shell。我希望 Cygwin 会在其中。但是请注意,新的 Windows 终端似乎只能在最新的 Windows 10 版本上运行。在这种情况下,您可能会考虑 WSL 甚至 WSL 2(也将在今年晚些时候推出),这可能比 Cygwin 或 MinGW 对您来说是一个更好的环境。

【讨论】:

  • Cygwin 不是外壳,它是用于类 unix 操作系统的开源软件的完整发行版。默认情况下,它使用 bash 作为 shell。 --- 在许多情况下,您可以在重新编译后在 Cygwin 中运行为类 unix 系统创建的 C 程序。有时您必须为 Cygwin 修改它们。
猜你喜欢
  • 2020-02-15
  • 1970-01-01
  • 1970-01-01
  • 2017-09-19
  • 2012-11-10
  • 1970-01-01
  • 1970-01-01
  • 2020-10-15
  • 2013-03-02
相关资源
最近更新 更多