Difference between 6.5.1 and 6.6.0 (backward compatibility)?

Couldn’t find actual release notes that point out the exact difference between QNX 6.5.1 and 6.6.0. I know that Photon’s not supported anymore.

So far, I’ve got SDP 6.6.0 but it might be that I need my software also to run on 6.5.0. So what is the actual backward compatibility level to 6.5.0? Some state that “6.6 is binary compatible with 6.5” or that they “created with 6.6, use[d] it on [their] 6.5 custom distribution and it worked” [1] - can anyone support this with official documents?

Since QNX follows the POSIX standard, I suppose that the APIs are the same and should be indeed provide backwards compatibility. So the programs created for 6.6.0 should basically also run on 6.5.0, right?

thanks, Ted

P.S.: You’ll find the same question posted by my friend on StackOverflow again.

Depending upon how you do your development, the difference between 6.5 and 6.6 could be dramatic or trivial.

The most important difference imho is that 6.6 comes without an x86 install CD. There is no longer a self hosted development environment available for customers on x86. If you are already doing cross development from a Windows or Linux system using Momentics, this is not a problem.

Photon, which was previously deprecated, and the gf layer that it rode on top of is now gone. In the place of gf is screen. In place of Photon is Qt and Storyboard. Screen is available for 6.5 from QNX if you need it.

The Gnu compiler that comes with 6.6 is a later version. I have not run into anything that would prevent 6.5 modules from running on 6.6 and vise versa. This appears to be the case for Photon and gf on 6.6 although I would advise going this route.

This question cannot be answered in a universal way. Some thoughts.

In my experience, the backwards compatibility is very high. There are subtle differences around startup and driver code though.

Although single application command line binaries compiled for 6.5 should run in a 6.6 environment, it is highly recommended to recompile them, because all the headers that are drawn in have been adjusted, if needed.

6.6 is not certified to any of the safety standards, but there are versions of QNX, based on 6.5, certified/conformant to IEC 61508, ISO 26262 and IEC 62304.

If you don’t need the latest security features introduced in 6.6, do not need current graphics solutions such as Qt 5.3, C++11 support, or a BSP/drivers off the shelf for the latest hardware, then there is no reason to embrace 6.6 immediately, IMHO. But it’s worth a try.