QNX’s IDE have the run mode and debug mode.
If the project’s name is “sample”
I run the “sample_g” in the debug mode and run mode . It is ok!
But I run the “sample” in the run mode. It isn’t ok!
Who can tell me the quextion?
I don’t know what your question is to be honest, but there are two things that are going on here:
- You have the QNX Make structure that will create both debug and non-debug variants (hence
the _g) with different compilation options. This will result in two different binaries that may have
different runtime characteristics. - The only difference between run mode and debug mode is if the debugger is involved or not.
It isn’t about “picking a binary” since that selection is done in the launch configuration (I may
want to run a debug or a non debug binary, I may want to debug a debug or non debug
binary.
So, again hopefully this clarifies things a bit, but playing Jeapordy here won’t get you much help.
Presuming you use your Debug-Binary in Debug mode and yor Release-Binary in Run mode and still encountering
problem in the release that did not happen during debug, points out to a race condition. I guess you try to use a
shared memory or similar within two threads or processes, then try locking/unlocking it.
You can also try (not recommend but may help) putting an sleep (delay) into one of your processes to see if it changes something.
I´ve never did this in QNX6, but in QNX4.25 i found a bug this way (also there were no threads yet :>).