📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
編集の要約なし |
|||
| 357行目: | 357行目: | ||
==== 実行ファイルの作成 ==== | ==== 実行ファイルの作成 ==== | ||
基本的なコマンド構文はWindowsと同様である、<code>--add-data</code> オプションの区切り文字がコロン (<code>:</code>) になることに注意する。<br> | 基本的なコマンド構文はWindowsと同様である、<code>--add-data</code> オプションの区切り文字がコロン (<code>:</code>) になることに注意する。<br> | ||
# CLIアプリケーションの場合 | |||
pyinstaller --onefile \ | pyinstaller --onefile \ | ||
--add-data "config.ini:." \ | --add-data "config.ini:." \ | ||
--add-data "resources:resources" \ | --add-data "resources:resources" \ | ||
main.py | main.py | ||
# GUIアプリケーションの場合 | |||
pyinstaller --onefile --noconsole \ | pyinstaller --onefile --noconsole \ | ||
--add-data "config.ini:." \ | --add-data "config.ini:." \ | ||
| 369行目: | 370行目: | ||
main.py | main.py | ||
<br> | <br> | ||
<center> | |||
{| class="wikitable" | |||
|+ PyInstallerによるビルドと実行時の環境要件 | |||
|- | |||
! 項目 !! 説明 | |||
|- | |||
| ビルド時 || PyInstallerのビルドプロセス自体はコマンドラインで実行するため、ディスプレイサーバー (X11 / Wayland) は不要 | |||
|- | |||
| 実行時 || 使用するGUIツールキットに依存する | |||
|} | |||
</center> | |||
<br> | |||
下表に、GUIツールキットのWayland対応状況を示す。<br> | |||
<br> | |||
<center> | |||
{| class="wikitable" | |||
|+ Python GUIツールキットのWayland対応状況 (2025年1月時点) | |||
|- | |||
! ツールキット !! Wayland対応 !! 備考 | |||
|- | |||
| Qt5 / Qt6 || ネイティブサポート || qt5-wayland / qt6-wayland パッケージのインストールが必要となる。<br>環境変数 <code>QT_QPA_PLATFORM=wayland</code> で明示的に指定可能 | |||
|- | |||
| PyQt5 / PyQt6 / PySide6 || ネイティブサポート || QtのPythonバインディングのため、Qt同様にWaylandをネイティブサポート | |||
|- | |||
| GTK3 / GTK4 || ネイティブサポート || GTK3はバージョン3.20以降で完全サポート<br>GTK4はWayland優先設計 | |||
|- | |||
| Kivy || SDL2経由でサポート || OpenGL ES 2.0とSDL2上に構築<br>SDL2がWayland対応のため、間接的にサポート | |||
|- | |||
| wxWidgets (wxPython) || GTK経由でサポート || LinuxではGTKバックエンドを使用するため、GTK経由でWaylandをサポート<br>ただし、クリップボードやドラッグ&ドロップ等で一部制限あり | |||
|- | |||
| Tkinter || 非対応 (XWayland経由で動作) || Tcl/TkがX11ベースで設計されているため、ネイティブ非対応<br>XWayland互換レイヤー経由で動作可能<br><br>将来的なWayland対応は検討中だが、現時点では未実装 | |||
|} | |||
</center> | |||
<br> | |||
==== specファイルを使用した設定 ==== | ==== specファイルを使用した設定 ==== | ||
Linuxでのspecファイルは、パス区切り文字がスラッシュになる点を除き、Windowsとほぼ同じ構造である。<br> | Linuxでのspecファイルは、パス区切り文字がスラッシュになる点を除き、Windowsとほぼ同じ構造である。<br> | ||