cancel
Showing results for 
Search instead for 
Did you mean: 

Generating TouchGFX code via the CLI on Linux

jackcampbell
Associate II

I have a TouchGFX Designer project that I setup in a Windows environment. In my .gitignore, I excluded the TouchGFX/generated folder so that all files can be generated fresh when the project is built on a new system.

I would like to be able to build the project in a Linux environment. However, since TouchGFX designer is not supported on Linux, I was hoping that I could run a make command to generate them without the Designer application. The only thing I could find was a command to invoke the tgfx.exe file provided with the designer.

Is it possible to build the generated code from TouchGFX designer in a Linux environment?

**EDIT**

I have created a Docker container that is running Linux, I have installed WineHQ in it to run the tgfx.exe file. Unfortunately, the container is having issue with running the GUI, is there a way to execute the tgfx.exe functions without invoking a GUI/window?

4 REPLIES 4
GaetanGodart
ST Employee

Hello @jackcampbell ,

 

Indeed, it is not possible to generate code from Designer on Linux since Designer doesn't work on Linux.

If nothing is blocking you, I would advise you to keep the generated files in your project (don't exclude them anymore or at least when you want to export to Linux).

From there, you will get all the header and source files necessary.
You will have to create your make file to compile and flash to your target.

I do not know what is the "tgfx.exe" file you are talking about. I have done a search through one of my project and haven't found a tgfx.exe or touchgfx.exe file.

 

Please tell me if you can generate code on Windows and then export it to your Linux systems or if you are restricted to generating on a Linux environment (I do not think there is a way to generate Designer code on Linux) .

 

If this message solves your problem, I invite you to select it as "best answer".

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

Hello @GaetanGodart,

Thank you for the reply. The tgfx.exe file is part of the TouchGFX Designer program files that are installed when you setup the designer. It should be at a path similar to C:\\TouchGFX\4.23.2\designer\tgfx.exe

I can run this exe on Windows to generate the files. I just wanted to see if I could get this executing on Linux for some future CI/CD work we are planning.

Is there a current plan to port the designer to Linux?

Hello @jackcampbell ,

 

Ok I understand.
What you did is in some terminal, call "tgfx.exe" with some of the parameters and you have tried the same command line on a Linux environment?
Source : tgfx.exe doc 

Have you tried running the Designer from Wine? the path for me is : "C:\TouchGFX\4.23.2\designer\TouchGFXDesigner-4.23.2.exe".

Because in the end, with just the tgfx.exe, you cannot design, all you can do is generate code but it is based on the myProjectName.touchgfx file and you need Designer to modify that (or modify by hand..).

 

We are thinking of importing TouchGFX and Designer to Linux and mac but it is quite a complex task and would require a lot of deep changes.

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)
GaetanGodart
ST Employee

Hello @jackcampbell ,

 

Were you able to move forward on solving your issue?

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)