メイン・コンテンツまでスキップ

前提条件

TouchGFXは主に、Windows 10で使用するように開発されています。 TouchGFX DesignerはWindows上でしか動作しませんが、基盤となるツールはLinux上でも動作します。

Windows上でのTouchGFXの使用

バージョン4.18以降、TouchGFXはWindows 10以降でのみ動作するようになりました。

TouchGFXには、開発に必要なすべての基本ツールが備わっています。 TouchGFXにはg++がバンドルされているので、C++コンパイラをインストールする必要はありません。

TouchGFXのインストール手順とコードFlash用の追加ツールについては、インストールに関する記事を参照してください。

Tip
Windows 7を使用している場合は、バージョン4.16を引き続き使用してください。 新しいバージョンにアップデートしないでください。

Linux上でのTouchGFXの使用

TouchGFXはLinux上でも使用できます。TouchGFX DesignerはLinux上ではネイティブで実行できませんが、TouchGFX Designerで生成されたコードはLinuxとWindowsの両方で動作します。

これに対して推奨されるソリューションは、Windowsを実行する仮想マシンでTouchGFX Designerを実行することです。 これにより、開発者は必要なときにDesignerを使用し、それ以外では通常のLinux環境を使用できるようになります。

LinuxでTouchGFXを使用するには、いくつかのツールとライブラリが追加で必要になります。 次のセクションでは、Ubuntuの使用方法について示します。 こうした要件は、他のLinuxディストリビューションでも類似したものになります。

Ubuntu 20.04でのTouchGFXの使用

最新のUbuntu 20.04 LTSでTouchGFXツールを使用するには、以下をインストールする必要があります。

まず、rubyをインストールします。コマンドは次のとおりです。

sudo apt install ruby

これによりrubyバージョン2.7がインストールされます。 Windows用のTouchGFXにはバージョン3.0が含まれていますが、現時点でこのバージョンはUbuntuリポジトリ内で使用できません。 通常の使用では、バージョン2.7で十分に機能します。

次に、"roo" gemをインストールします。

sudo gem install roo

makeおよびg++をインストールし、C++プログラムをコンパイルできるようにします。

sudo  apt install make g++

最後のパーツは、SDL2ライブラリとヘッダ・ファイルです。

sudo apt install libsdl2-dev libsdl2-image-dev

デフォルトのg++バージョンは9.3.0です。 このバージョンで使用する警告レベルは、TouchGFXに含まれているWindows用のg++と異なっています。 シミュレータのg++フラグとリンカ・フラグに、2つの変更を行う必要があります。

config/gcc/app.mk
# Copyright (c) 2018(-2021) STMicroelectronics.
# All rights reserved.
#
# This file is part of the TouchGFX 4.18.1 distribution.
#
# This software is licensed under terms that can be found in the LICENSE file in
# the root directory of this software component.
# If no LICENSE file comes with this software, it is provided AS-IS.
#
###############################################################################/
# Relative location of the TouchGFX framework from root of application
touchgfx_path := ../../../touchgfx

# Optional additional compiler flags
user_cflags := -DUSE_BPP=16 -Wformat-truncation=0
linker_options := -no-pie

TouchGFXファイルがWindowsのライン終了を使用しているため、Linux rubyが警告を発出します。

ruby: warning: shebang line ending with \r may cause problems

この警告は、2つのファイルをUnixのライン終了に変更する(または、#!で始まる最初の行全体を削除する)ことで削除できます。

dos2unix touchgfx/framework/tools/textconvert/main.rb
dos2unix touchgfx/framework/tools/videoconvert/videoconvert.rb