cygwin - Cygwin 上的 startx 发生了什么?

标签 cygwin xterm

我刚换了台式电脑。我以前的电脑和这台电脑都有 Windows XP。为了与我们拥有的许多 Linux 服务器一起工作,我安装了 Cygwin 及其 xterm 包。但是,我无法像使用以前的计算机那样运行 startx 来启动 X-window 服务器。我一直在网上查看为什么我的安装中缺少 startx,但我还没有找到任何东西。任何帮助将不胜感激。

[做更多研究] 嗯,我刚刚安装了 xinit 包,我不记得以前必须这样做。 (上次安装 Cygwin 时可能需要 xterm 包。) startx 现在存在,但我不会说它有效。它启动的 X-window 服务器创建了一个窗口,该窗口覆盖了我的整个监视器,其中包含三个终端,这与我习惯的旧的 25 行 x 80 列单终端窗口不同。更糟糕的是,我不能像以前那样只生成子窗口,这是将 Cygwin 与 X-windows 一起使用的真正力量。

最佳答案

好的,在做了更多研究并从我的一位同事那里得到帮助后,我找到了解决问题的方法。

发生的事情是,虽然 startx 存在,但它现在默认以全屏模式而不是多窗口模式启动 X 服务器。回顾过去,我可能已经将/etc/X11/xinit/xinitrc 复制到 ~/.xinitrc 并对其进行了自定义。然而,事实证明,X 服务器还有其他更容易修改的启动脚本。 (见 http://x.cygwin.com/docs/ug/using.html。)

在本例中,我采用了脚本 startxwin.bat。然后我对 startxwin.bat 进行了一些更改:

  • 我向 CYGWIN_ROOT 添加了一个驱动器号,因为我的工作环境在 C 驱动器之外有我的主目录。
  • 我在 xterm 调用中添加了一个“+tb”选项,以抑制 X 窗口顶部的菜单栏。

  • 有趣的是,通过转到“开始”→“程序”→“Cygwin-X”→“Xwin 服务器”,我可以打开 GUI Cygwin X 窗口,而无需打开标准 Cygwin 命令行。我以前的安装显然不是这种情况。

    我应该补充一点,我在扩展我的软件包选择后进行了这些更改。我没有安装 X11 → xterm,而是遵循了 http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html 的第 15 步中的建议。并安装:
  • X11 → X-start-menu-icons
  • X11 → xinit
  • X11 → xorg-docs
  • X11 → xorg-server

  • (这个选择选择了 X11 → xterm 作为必需的包。)虽然我看不出为什么上面的说明只安装 X11 → xterm 和 X11 → xinit 不适用的明显原因,但我没有把这个理论付诸实践,我几乎不想吹走我当前的安装并重建它来证明我的理论。

    我希望这可以帮助其他人避免一些痛苦。

    关于cygwin - Cygwin 上的 startx 发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/514358/

    相关文章:

    bash - Cygwin 将文本换回到同一行,导致文本被覆盖

    keyboard - telneting 退格键错误

    node.js - 在 'OSError: [Errno 2] No such file or directory:' 编译 `node-gyp` 中的模块期间获取 `npm install`

    utf-8 - g++ 花引号在控制台和 "Problems"列表中显示不正确

    git - 'X' 似乎不是 git 存储库(我确定路径是正确的)

    Java ProcessBuilder 在传递参数时使用字符串中的句点而不是斜杠

    c++ - Cygwin 与 Linux 下 g++ 创建的可执行文件的默认文件扩展名

    c++ - C 项目 O 文件在 make 期间删除后仍在寻找 Cpp 文件

    c - 如何构建支持超过 223 列鼠标输入的 Curses 程序

    linux - xterm:如何禁用 mainMenu、vtMenu 和 fontMenu?