Linux, Solaris and Windows

  1. sorry to make my first post a help post, but I have to start somewhere.

  2. I am new to QNX and about to start a rather large project on a “powerful” embedded device using QNX 6.3.0.

  3. my question:

is there any difference between developing for a QNX 6.3.0 system from Linux, Solaris or Windows.

I haven’t been able to find any since all the development uses Eclipse and Momentics, but I’m still in doubt whether it’s the exact same IDE because Eclipse support Mac and the QNX site does not mention being Mac compatible.

Eclipse is a Java application, so it will run om any platform with a appropriate JVM.
The QNX tools, e.g. compiler, linker, debugger are native to QNX, they run under a cygwin on a windows platform.
I assume on Linux (never used Linux as a development host myself) that they are ported to linux.

Now I doubt that these tools would run on a Mac, So stick to either Linux or Windows.
My experience with running Momentics on a Widows host was a pretty good one, a few minor gripes, building big projects was a little slow, but I use a 2GHz laptop.
Should be much better with a dual core speed of light modern jobbie.

I am sure this thread will attract a few opinions.

Thanks for the quick reply

I hope it will attract a lot of attention, not because I want a Linux vs. Windows discussion, but because my project probably will be developed in a mixed platform environment consisting of Linux and Windows and I don’t care witch is better i just want to know if a compiler/Eclipse bug on a Windows Host applies to a Linux host as well.

You can also develop natively under QNX6, but the JVM and version of the IDE is one step behind, I don’t recommend it.

I’m guestimating that the Windows tools set has more mileage then the other, but as bren-uk says the IDE is JAVA based so it should make a big different. I was told that you get better performance when running the IDE under Linux 64 with a 64 bit JVM. I tried under XP64 and a 64 JVM, it seems faster but i don’t have any hard numbers to back that up.

A machine with more then one core is of great benefit, the IDE is more responsive when doing things such as running the C++ indexer.

Mac is out, unless you go through a VM or use bootcamp. You can probably use Eclipse/CDT downloaded from eclipse, but none of the tools will work.

Developing natively under the QNX system is not possible, since the company i am going to write this program for, thinks QNX will stop supporting this feature, due to the fact the in QNX JVM and IDE is older than all the other development option.

It seems like the solution desired by the company is setting up a windows host to compile etc. and allow the code itself to be written on other machines running Windows or Linux, sound like a weird and stupid setup, and I’m still worried about possible differences between the Windows and Linux IDE.

dual core = better, noted :slight_smile:

Won’t use MAC, since we don’t have one, just noted Eclipse is able to run on MAC while the Momentics part would not.

"Developing natively under the QNX system is not possible, since the company i am going to write this program for, thinks QNX will stop supporting this feature, due to the fact the in QNX JVM and IDE is older than all the other development option. "

A project can be move from one environment to the other with no impact (even if QNX native is not the same version). I think it’s a matter of personal taste. Since each license has a version of any host, it’s possible to let each developer choose his/her host platform.

The QNX ide is quite different then the other host, but I would expect every other hosts to be very much alike as far as the IDE is concerned.

I’m pretty sure that for the last 20 years, QNX has been developed on, well … QNX. That could change, just as anything else in the universe could change, but it’s pretty darn unlikely. A consequence of that is that, it’s unlikely that QNX would drop support for the self hosted development environment. The advantages of developing under ths same OS as the target are usually significant. Here are just a few.

  1. Quicker modify/compile/test cycle
  2. No mental mode switching
  3. Early testing using a software target simulator

The few disadvantages, like lack of CD/DVD burning software can easily be bridged using tools like NFS.
I have run into a lot of “corporate” environments where the non-technical higher ups are fond of making technical decisions like, “we will use Windows”, so I understand the resistance.

Mitch,

If you tried the version of the IDE on NTO versus the version on the other host you will find there are big big difference. The version of Eclipse is older as well as the version of the CDT ( that’s were it hurts), also the lastest IDE4 that improves quite a lot on debugging and system monitoring tools is NOT available for self hosted.

I believe the issue has to do with the available JVM for QNX4 that doesn’t support all the required featured. I have no idea what QNX can or is willing to do about that. I’m told
self hosted will not be dropped, but it’s already behind so it’s not looking good from my perspective.

Thanks it was this reply I was looking for, I feared code developed on a Linux/Windows host would behave differently when transferred to a different host OS.

Now I just have to figure out how that Windows host the company wants has to be set up in order to avoid to possibility of stupid errors.

The resulting code should be exactly the same what ever the platform ( assuming you have the same version 6.?.? of course). It’s the development experience that will change from platform to platform.