cancel
Showing results for 
Search instead for 
Did you mean: 

one project - 2 computers -simulator only works on one

LPala.2
Associate II
I have 2 computers running TouchGFXDesigner 
 
Although one computer is a desktop and the other a laptop I have taken great care to ensure that both computers are setup as identically as possible.  That is they both are running the same versions of TouchGFXDesigner , CubeMX, & CubeIDE.  All the files for the ST products reside in their respective default directories and these directories are identical on both computers. The user name for both computers is the same so in short these computers are as identical as they can possibly be.  Yes I even checked the environment variables and paths.
 
However, I have run into an issue where a project created on one computer will not function properly in the other.  Oddly enough the reverse is also true.  In short I only seem to be able to run the simulator (for example) on the computer that the project was initially created on. The development environment seems to work fine on both though.  I also tried creating a very simple project on both computers and the simulator runs properly for each system. Using Winver I was able to verify that the simple project files were for all intents and purposes, identical.
 
The error that I get is shown below, but it looks like the linker cannot find the touchgfx folder.  
This appears to be set in a number of places as "TouchGfxPath": "../Middlewares/ST/touchgfx" or similar
such as touchgfx_path := ../Middlewares/ST/touchgfx in the TouchGFX/config/gcc/app.mk file  
 
The problem is that the touchgfx folder exists in the exact same place on both systems and do not understand the cannot find touchgfx error.
 
I tried setting the touchgfx_path in several places (the .touchgfx and app.mk files) and in all cases the TouchGFX designer software resets the changes back to a relative path.  I thought that I would try using the full path for touchgfx folder to see if the error persists.
 
Linking build/bin/simulator.exe
        C:/TouchGFX/4.26.1/env/MinGW/bin/../lib/gcc/i686-w64-mingw32/13.2.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -ltouchgfx: No such file or directory
        collect2.exe: error: ld returned 1 exit status
        generated/simulator/gcc/Makefile:160: recipe for target 'build/bin/simulator.exe' failed
        make[2]: *** [build/bin/simulator.exe] Error 1
        generated/simulator/gcc/Makefile:155: recipe for target 'generate_assets' failed
        make[1]: *** [generate_assets] Error 2
        simulator/gcc/Makefile:32: recipe for target 'all' failed
        make: *** [all] Error 2
        Failed
 
I am not sure how to proceed, any help is appreciated as this is a significant inconvenience for me.
 
I am also wondering why I cannot force a path change in the project.
10 REPLIES 10
LPala.2
Associate II

Update:

If I set TouchGFXDesigner to run as administrator on the desktop, I can work with projects created on the laptop.

However, if I do the same on the laptop, TouchGFXDesigner throws the exact same error on projects created on the desktop.

Lastly I did a file comparison on all folders related to TouchGFX and have not seen any significant differences between the 2 installations. 

One difference that I have seen is that the desktop and laptop logins are slightly different.  That is the desktop uses a Microsoft account as administrator while the laptop uses a local administrator account.  Both accounts have the exact same login name so the st related folders all show up in the same c:\\users locations.

This error "smells" like a permissions issue, but granting full control to all users in the project folder (C:\\TouchGFXProjects) did not solve the issue on the laptop.

 

 

 

Pavel A.
Super User

Ideally, in such case, create a setup in a virtual machine.

 

 

LPala.2
Associate II

I certainly can do that (even on another physical machine) but that might just add another set of variables.

One thing that I do not understand why I cannot set the touchgfx location in a configuration file and have it stay persistent.  It seems that even if I make a change to the location, in this case providing the full path, the TouchGFX Designer software automatically changes it back to a relative path.

This certainly makes troubleshooting more difficult

 

 

Osman SOYKURT
ST Employee

Hello @LPala.2 ,

This is an issue I've not heard before, thanks for reporting.
Do you have exact same windows version on both computers? Do you have x64-based processor?

One more thing, what happens if you delete all the generated files from the projects, and generate again with the other computer? Do you still face the issue?

Osman SOYKURT
ST Software Developer | TouchGFX
LPala.2
Associate II

Osman,

Both computers are running Win 11 x64 based processors and are set up as similar as they can be.  I work out of both systems (makes sense desk top rig and a laptop).  I keep everything aligned using an SVN server.  The ST products are installed in their default directories, however, the project folder is in a TouchGFXProjects folder just off the root on the c: drive.  Both accounts are named the same and have admin priviledges.

Basically 2 identical "vanilla" systems.

 

To answer your original question, TouchGFXDesigner does not have a "clean" project option so I had tried deleting the

build and simulator folders and got the same result.

 

Also I tried changing the setting for touchgfx_path

from: touchgfx_path := ../Middlewares/ST/touchgfx

to: touchgfx_path := C://TouchGFXProjects/<my_project_name>/Middlewares/ST/touchgfx

in these files app.mk and in <my_project_name>.touchgfx and in both cases the the software resets the setting back to the relative path.

 

 

mfgkw
Senior III

Can you see the same problems, when you do NOT use svn for a (new) project, but just transfer the files manually?

 

(I do not use TouchGfx. But I had problems with svn synchronized projects until I eliminated .*- stuff from svn, like .settings. .project etc..)

LPala.2
Associate II

I will try that today and let you know

 


@mfgkw wrote:

(I do not use TouchGfx. But I had problems with svn synchronized projects until I eliminated .*- stuff from svn, like .settings. .project etc..)


FWIW, I also don't use TouchGFX, but do use SVN - and including .settings and .project works fine for me!

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
LPala.2
Associate II

moved the project and deleted the svn stuff..same linker error ..cannot find the touchgfx folder