cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with "Run Target" on TouchGFX Designer: target/gcc/Makefile: No such file or directory

Alberto1
Associate III

I state that I have already seen this problem within the community, but I was unable to solve my problem.

I'm reading the TouchGFX Documentation to be able to develop an application: I followed the instructions in "Code Structure" with the simple example provided.

If I go to simulation, everything is ok.

If instead I try to execute "Run Target", I am returned:

compile

make -f target/gcc/Makefile -j8

make: target/gcc/Makefile: No such file or directory

make: *** No rule to make target 'target/gcc/Makefile'. Stop.

Failed

Checking in "Config" of the TouchGFX Designer, I noticed that the lines "Compile Target Command" and "Flash Target Command" are not compiled.

I entered "make -f target/gcc/Makefile -j8" and "make -f target/gcc/Makefile -j10 flash" respectively.

The result doesn't change.

I also noticed that while the gcc folder is present in the "simulator" folder, it is not present in the "target" folder.

How can I solve the problem? What does it depend on?

Thank you in advance.

Alberto

11 REPLIES 11
Alberto1
Associate III

After a deep searching I discovered that the "gcc" directory in the root of the example, there wasn't.

Now the question is: how can I procede?

Do I have to insert it or, as I think, should "the system" (CubeMX, CubeIde, TouchGfx..) create it autonomously?

Thanks

Yoann KLEIN
ST Employee

Hello @Alberto​,

Did you start your project from a TouchGFX Board setup in TouchGFXDesigner ?

If yes, then the gcc folder is already included inside the project and you can directly run your project on target.

/Yoann

Yoann KLEIN
ST Software Developer | TouchGFX
Alberto1
Associate III

Hello @Yoann KLEIN​ 

First of all thanks for your reply.

I use a STM32H7B3I-DK and I started from CubeMX where I defined the pinout for supporting the onboard display.

I genereted code and I use CubeIde to follow the example describe in the documentation.

Aftre I use TouchGFX to insert the 2 widget (as describe in documentation).

Your steps is OK, but MX created projects dont enable run on target (not filled),

run to target here is possible only in IDE selected in MX. (IDE/KEIL/IAR ...)

In TouchGFX is enabled only generate code (required step after gui change) and simulate partialy

After generate close touchgfx or switch to IDE opened ...

Hi,

As MM said STM32CubeMX will not generate the gcc folder and the Makefile as the ones used in the TouchGFX Board Setups. This is because we have made those "ourselves" and then set the run commands in the "Compile Target Command" and "Flash Target Command" in the Build tab in the Config view in TouchGFX Designer.

To enable run on target in your project you would need to either put the commands to run the projects generated by STM32CubeIDE from TouchGFX Designer (not sure what command that would be, never done it myself. I just run from the toolchains tjemselves or STM32CubeProgrammer) or write a makefile yourself (you can use the ones in the different TouchGFX Board Setups as source of inspiration).

/Romain

/Romain

Alberto1
Associate III

Hi!

@Romain DIELEMAN​ @MM..1​ 

Thanks again.

This could be quite a problem.

I have no experience with "makefile" and "linker script"...and I have to develop a firmware on a custom board.

However, I managed to eliminate the error messages (of the Run Target), by modifying a "makefile" of an example, as you suggested.

Now the program is downloaded in my board, but nothing is visible.

Using the simulator, however, you see the graphical interface created.

So, either something is wrong in the "makefile"/"linker script" or the code generated by TouchGfxDesigner is incorrect.

In addition, even going into debug on the CubeIde I get the same result: nothing is visible. ...so I don't know how to proceed.

Summary, from what I understand, correct me if I'm wrong, I could (after creating the project with CubeMX and CubeIde...) switch to TouchGFX Designer, create the user interface and then via CubeIde run the program and see the UI interface. Right?

Alberto

Hello,

Yes you are right it will be easier to just design your UI in TouchGFX Designer and then run the program via STM32CubeIDE.

The fact that you currently see nothing could come from many things though 😅 I would recommend the test in this article to see if you have correctly enabled your display first.

/Romain

Hi!

Yes, in fact it can be a bit of everything...:D

I read the article and the card (STM32H7B3I-DK) was working fine.

Then, perhaps, by modifying the project from CubeMX to support TouchGFX, some setting has been lost...

I'll do some tests and check.

Anyway, thanks again for everything.

Alberto

Yes, simply you need understand, that TouchGFX is wizard for create gui part code . Second part code for HW you need write in IDE. (some is prewrited but need customize)
Use TGFX and MX not prepare working design .
Direct working is only examples in TGFX for demo boards.