PATH used by Momentics

Hello. I am using the Momentics development environment (version 7.0.4) on a Windows 10 development computer. I have a project that was originally developed for QNX 6.3.2 but I need to port to QNX 7. I have managed to import the project into the new version of Momentics but am struggling to persuade the environment to use the QNX 7 tools rather than the QNX 6.3.2 ones. When I do Build Target on the clean target it always runs the make utility in the C:\QNX632 folder (which is correct for QNX 6.3.2) but iif I look at the PATH environment variable from a Windows command prompt it specifies the C:\qnx700 folder. If I rename C:\QNX632 folder to C:\xxxQNX632 and try to build again I get the message “Error: Program “make” not found in PATH”, but the path it says it is searching is nothing like the one that I get from the PATH environment variable when read from the command prompt.

Path Momentics is using:

Path Windows is using:

So where does the PATH that Momentics uses come from? How do I change it?

Any help appreciated.

I don’t know if this will be helpful. QNX 7 give you two options when setting up a project. You can use the old method which uses very obscure recursive make files or you can have it generate a relatively normal looking make file that you can feel confident about modifying if you like. Which ever method you are using, I would try the other one.

Another idea would be to create a new empty project from scratch and move your source files in. You might have to connect some external libraries.

I for one feel your pain!

I have nothing but bad memories of the Momentics build system, that is based on the Eclipse IDE. It is also used by Xilinx and we had similar problems there also when hosted on a Windows box.

I personally don’t know anyone using using the IDE for code development now. I certainly gave it away some years ago as I couldn’t figure out how to recover from project database corruptions that ultimately resulted in java type exception error messages that didn’t actually say what the error was. I don’t think it was a QNX thing as others had similar problems with the IDE that came with the Xilinx Vivado system (as it was called back then).

The path problem was also, well, a problem.

So I, and others, simply use the old familiar edit and make procedures. Not only is it much faster to build systems, you have much more control over what is going on in your environment. I haven’t therefore used the IDE for code development for more than five years.

But I did use the other tools provided, mainly the management of multiple target systems as well as a debugger and profiler. That part was very clever and useful, and in my opinion remains so to this day.

Perhaps you try an older and more traditional, and less complicated (but more reliable) method of code management and development by adopting the make type build manually. After all, that’s all the IDE is doing! KISS principle I suppose.

The Momentics development environment doesn’t use Windows PATH environment variable. Instead is creates it’s own for cross platform development.

These are found in your home directory where QNX is installed. For example my windows username is ‘tim’ and my QNX folder for QNX 7 is

C:\Users\tim\qnx700

In here you’ll find batch and shell files that set the QNX paths and environment variables where to look for the libraries for compiling QNX 7 code (my case). The key file is qnxsdp-env.bat
You should also have a C:\Users'yourusername’\qnx632 folder for compiling under QNX632.

Right now your Momentics is set up to point to QNX632 by default. You’ll need to change it to look in QNX7 to compile QNX 7 code.

I don’t recall how to do that but it must be somewhere under the Momentics general configuration. This article essentially talks about what I wrote above and how you have to change configurations.

Tim

P.S. Its in your qconfig folder. For me that was in
C:\Users\tim\ .qnx\qconfig
In that folder is a single XML file that contains which version of QNX that Momentics uses when it starts. If you can’t figure out how to set that in Momentics you can hand edit this file to point between QNX7 and QNX6.3.2