Skip to main content
Associate
August 2, 2023
Question

Using Tgfx.exe generate job fails

  • August 2, 2023
  • 5 replies
  • 3113 views

Hi @ all,

I'm using the TouchGFX version 4.20.0 for a development project for a user interface and communication system called "UICS".

To generate a build job on a jenkins I tried to used the command "tgfx.exe generate" to automatically generate files. For example: (file path abbreviated)
..\tgfx.exe generate -v -p ..\UICS_Software.touchgfx

I can track that the makefile is called and the generation of files should start but at some point a folder is renamed which is necessary for the file generation.

This is the output:

Generate Code

Wrote generated/simulator/gcc/Makefile

Done

Generate Assets

make -f simulator/gcc/Makefile assets -j10

generated/simulator/gcc/Makefile:221: recipe for target 'images' failed

process_begin: CreateProcess(NULL, ../Middlewares/ST/TouchGFX/touchgfx/framework/tools/imageconvert/build/win/imageconvert.out -r assets/images -w generated/images, ...) failed.
make (e=2): The system cannot find the file specified.
make[1]: *** [images] Error 2

simulator/gcc/Makefile:47: recipe for target 'assets' failed

make: *** [assets] Error 2

Failed

Generating assets failed

Inside the project files the folder "UICS_Software\Middlewares\ST\TouchGFX\touchgfx" is renamed to "UICS_Software\Middlewares\ST\TouchGFX\touchgfx_backup" during execution of the comand "tgfx.exe generate". Due to renaming of the folder, the makefile cannot find the file "../Middlewares/ST/TouchGFX/touchgfx/framework/tools/imageconvert/build/win/imageconvert.out".

Can you help me solving this problem, so that I can get jenkins to generate files automatically?

Looking forward to hearing from you and thanks for your help.

 

This topic has been closed for replies.

5 replies

JSeiz.1
Visitor II
August 2, 2023

Hi,
I have installed TouchGFX 4.22 and I have the same problem.
When I move a copy of the "touchgfx" folder into the directory ".....\Middlewares\ST\TouchGFX" at the moment when the directory is renamed to "touchgfx_backup", my project is completely built.

 

ElaskonAuthor
Associate
August 24, 2023

Hi again,

can someone please help me with this issue. I am still struggling to get it to work.

Thanks in advance.

Graduate II
August 29, 2023

Same here...

ST Employee
September 1, 2023

Hello @Elaskon ,

The 'touchgfx_backup' is created when you have created your project in an older version of TouchGFX and then you open it in a newer version. So, I would say make sure the TouchGFX version of your project and the TouchGFX version of your designer are the same. In addition, you can try to use another solution, which is to use the TouchGFX Environment to generate code and compile.

I hope this will help you, otherwise, feel free to ask more questions.

ElaskonAuthor
Associate
September 1, 2023

Thanks for your answer.
Can you explain how I make sure the TouchGFX version of the project and the TouchGFX version of the designer are the same?
By "using the TouchGFX environment" you mean that on the Jenkins the designer would have to be opened? Or is there another way to use the TouchGFX environment?

 

Explorer
November 29, 2023

Hello Elaskon,

I'm Japanese, so my English is poor, but please understand.

Are there any hidden folders under ./assets/images that you checked out with Jenkins?

The build will fail if there are unrelated files under ./assets/images.

If the version control software you are using is SVN, try setting it to the latest version in Jenkins system settings. No hidden folders will be created under ./assets/images.

Could you please check it once?

ElaskonAuthor
Associate
November 29, 2023

Hi Ktaro,

thanks for your reply.

 

I have checked the folder ./assets/images. There are no hidden folders or unrelated files in ./assets/images.

The version control software we are using is TortoiseHg Version 5.0.2.

 

But it's not dependent on the jenkins. It also fails locally if you are try to generate the source files with
..\tgfx.exe generate -v -p <your_project>.touchgfx

 

It is easy to reproduce. Just open a new project in TouchGfx and create a single screen with a button and save it. Open a command line tool and use the above written command for generating files. "tgfx.exe" can be found inside your TouchGfx installation directory on your computer. Please contact me, if you need help to reproduce the behaviour.