Cygwin/X (X サーバソフトウェア)のインストールとテスト実行(Windows 上)

Cygwin/Xのインストールと設定に関する説明を行う.Cygwin/XはWindowsで動作するXサーバソフトウェアで,Windows環境でXアプリケーションを利用することが可能になる.リモートLinuxマシンの利用などで役立つ場合がある.インストール手順としては,Cygwinのセットアッププログラムを使用してX11関連パッケージを選択し,環境変数の設定を行う.Xサーバの起動は「startx」コマンドで行い,設定ファイルを編集することで起動オプションをカスタマイズできる.また,リモートログインの例として,SSHのポートフォワーディングを使用する方法を紹介している.また,Cygwin上でgnuplotを実行してグラフを描画する方法も紹介している.

前準備

Cygwin のインストール(Windows 上)

Cygwinは,Linux と類似の機能を提供するツールとライブラリ

主な機能:ツール,POSIX API(cygwin1.dll)

  1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
  2. 次のコマンドを実行

    次のコマンドは,Cygwinをインストールし,パスを通すものである.

    winget install --scope machine Cygwin.Cygwin
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\cygwin64\sbin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\cygwin64\bin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\cygwin64\use\sbin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\cygwin64\use\local\bin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    
  3. 再度,Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
  4. setup-x86_64.exe のダウンロード,wget のインストール
    cd c:\cygwin64
    curl -O https://www.cygwin.com/setup-x86_64.exe
    .\setup-x86_64.exe -q -P wget
    .\setup-x86_64.exe -q -P gcc-core
    .\setup-x86_64.exe -q -P gcc-fortran
    .\setup-x86_64.exe -q -P gcc-g++
    .\setup-x86_64.exe -q -P gdb
    

関連する外部ページ

Cygwin インストールディレクトリの確認

Cygwin/X の X サーバソフトウェアのインストール手順

Cygwin のセットアッププログラム setup-x86_64.exe (ダウンロードは別ページで説明) を使ってインストールする.

  1. セットアッププログラムの開始
  2. パッケージ選択画面 (Select Packages)」まで進む
  3. パッケージ選択画面で,パッケージを選ぶ

    下記のパッケージをチェックする.

    • X11/X-start-menu-icons

    フォントも選ぶ. 「たくさんあって,何を入れたらよいか分からない」という場合には, とりあえず,次を選んでおく.

    • X11/font-adobe-dpi100 など

    * 後で,Cygwin のセットアッププログラムを再実行して,簡単に追加できるので,あまり悩まないこと.

  4. 終了の確認
  5. cygwin1.dll のコピー

    これは,Windows の側から,Cygwin のプログラムを実行できるようにするための設定

    C:\cygwin64\bin\cygwin1.dll を C:\Windows\System32 にコピーしておくこと

  6. 環境変数の設定

    これも,Windows の側から,Cygwin のプログラムを実行できるようにするための設定

    • Windows環境変数 PATH に「C:\cygwin64\bin;C:\cygwin64\usr\bin;C:\cygwin64\usr\local\bin」を追加する.

      * すでに環境変数 PATH が定義済みのときは,半角のセミコロン「;」で区切って既存の 定義と区切る.

    • Windows環境変数 LD_LIBRARY_PATHに「C:\cygwin64\lib;C:\cygwin64\lib\w32api;C:\cygwin64\usr\local\lib」を追加する.

      * すでに環境変数 LD_LIBRARY_PATH が定義済みのときは,半角のセミコロン「;」で区切って既存の 定義と区切る.

X サーバの起動と設定

Cygwin/X の X サーバの起動は,次のような手順になる.

Cygwin/X の X サーバの設定について,簡単に紹介しておく.

リモートログインの例

X サーバを起動した状態で, UNIX マシンにリモートログインする例を示している. このとき,リモートで動くプログラムのウインドウが,自分の手元のパソコンで開きます.SSHのポートフォワーディングの機能を使う (何故かというと,自分の手元のパソコンがプライベートIPアドレスしか持っていない場合でも動くように).