本記事は Google Gemini で調べながら実際の動作まで確認した内容の覚書です
はじめに
M1 Macから、FPGA開発環境(Vivado/Vitis)や解析ツール(PyBERT)がインストールされたUbuntu(24.04 LTS) PCへSSH接続し、GUIで操作するための設定をまとめました
1. Mac側の準備
Macは標準ではXサーバーを持っていないため、XQuartzを導入する
- XQuartz公式からインストール
- インストール後、Macを再起動(またはログアウト)
- 重要: XQuartzの「設定」>「セキュリティ」で「認証されたクライアントからの接続を許可」にチェック
- ターミナルで以下を実行し、間接OpenGL描画を許可
defaults write org.xquartz.X11 enable_iglx -bool true
2. SSH接続
-YC オプション(信頼されたX11転送 + 画面データの圧縮)を使用して接続
ssh -YC ユーザー名@UbuntuのIPアドレス
3. Ubuntu側の依存ライブラリのインストール
Ubuntu 24.04 LTSで 最新のGUIツール(Qt6/PySide6等) を動かすために、以下のライブラリをインストールします
sudo apt update
sudo apt install libxcb-cursor0 libxcb-xinerama0 libcanberra-gtk-module libcanberra-gtk3-module libwebkit2gtk-4.1-dev
4. 環境変数の設定
以下を.bashrc に追記することで、描画エラーが起きるのをできるだけ防ぐ
# GUI apps over X11 forwarding settings
export GDK_BACKEND=x11
export GTK_THEME=Adwaita
export LIBGL_ALWAYS_SOFTWARE=1
export QT_QPA_PLATFORM=xcb
追記後、source ~/.bashrc で反映する
5. 各ツールの起動例
Vivado(2024.2)
通常通り起動
vivado
Vitis (2024.2 Unified IDE)
通常通り起動
Macのターミナルでコマンドプロンプトに制御が戻ってからGUIが起動する
- ただし、起動後のGUI画面は位置・サイズの変更ができないので注意
- Vitis上部のメニューバーをダブルクリックすると最大化はできる
vitis
※EclipseベースのVitis Classiを立ち上げる場合は以下のコマンドを使用する
vitis -classic
PyBERT
起動時にOpenGL関連の警告(glx: failed to create drisw screen)が出るが、基本的には無視しても問題なく動作可能
pybert
6. トラブルシューティング
「could not connect to display」と出る場合
- Mac側でXQuartzが起動しているか確認
-
echo $DISPLAYで値が表示されるか確認。空なら-Yオプションを忘れている可能性がある
インストールするパッケージがみつからない
Ubuntu 24.04では一部の古いライブラリが廃止されているため、libxcb-cursor0 のような新しいパッケージ名を使用している。
24.04以外を使用する場合は、Ubuntuのバージョンに合わせてパッケージ名を修正する必要がある


