Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Version of Development suite vs. target OS: Page 1 of 2 (11 Items)
   
Version of Development suite vs. target OS  
Is my understanding correct that the version of Development suite is bound to version of the target? Using a newer 
Momentics IDE is not officially supported agains older target versions? Or, are there any directions on mismatching 
versions?

Thanks,
Saul
Re: Version of Development suite vs. target OS  
IDE can work with older versions of SDP, but SDP on host must match one on target for debugging.
I.e. if you have 6.3.2 installer you can use IDE 4.7 (from 6.5) to re-target to use 6.3.2 tools and API's.
Re-target using Windows->Preferences->QNX

On 16/11/10 09:56 AM, Saul A wrote:
> Is my understanding correct that the version of Development suite is bound to version of the target? Using a newer 
Momentics IDE is not officially supported agains older target versions? Or, are there any directions on mismatching 
versions?
> 
> Thanks,
> Saul
> 
> 
> 
> 
> _______________________________________________
> 
> QNX Momentics Getting Started
> http://community.qnx.com/sf/go/post74791
> 
Re: Version of Development suite vs. target OS  
Elena, this is exactly what I'm having trouble with. C++ apps built in IDE 4.6 with target files from 4.01 (as you 
adviced) do not work on 6.3.2 target because they depend on libc.so.3. I"ve copied it to the target but then other 
things fail.
Apps written in plain C do not require newere  libs.

Should I try IDE 4.7?

Thanks,
 Saul
Re: Version of Development suite vs. target OS  
No you need 6.3.2 SDP to build. You are building using 6.4 SDP which uses new libc. You can try 4.7 but workflow is the 
same. You have to change Target SDP is the settings first.


On 16/11/10 10:13 AM, Saul A wrote:
> Elena, this is exactly what I'm having trouble with. C++ apps built in IDE 4.6 with target files from 4.01 (as you 
adviced) do not work on 6.3.2 target because they depend on libc.so.3. I"ve copied it to the target but then other 
things fail.
> Apps written in plain C do not require newere  libs.
> 
> Should I try IDE 4.7?
> 
> Thanks,
>  Saul
> 
> 
> 
> 
> _______________________________________________
> 
> QNX Momentics Getting Started
> http://community.qnx.com/sf/go/post74800
> 
Re: Version of Development suite vs. target OS  
I switch SDPs with qwincfg. 
Is this same as selecting SDP from Window -> preferences  -> QNX?

Could anyone confirm that one can in IDE 4.7 or 4.6 select SDP 6.3.2 (which is installed, of course) and build a "hello 
world" sample c++ app, and it will run on clean 6.3.2 ?

Because, for me it does not run. The c++ app refers to libc.so.3.
Can this be because of some c++ options, such as kind of c++ library?

Plain C apps build with  this setup, refer to libc.so.2 and work.
C++ apps built in the 4.01 IDE also refer to libc.so.2 (and libcpp.so.4) and run on 6.3.2.

- S.
RE: Version of Development suite vs. target OS  
You need to use the IDE Windows -> Preferences -> QNX -> Installed Baseline and select your 6.3.2 installation, and 
restart your IDE for it to take effect. "qwincfg" does not change what the IDE uses.

After you switch your SDP, you can build and run your binary on the same SDP target. We have many users doing this 
already.


-----Original Message-----
From: Saul A [mailto:community-noreply@qnx.com]
Sent: Tue 16/11/2010 8:41 PM
To: momenticsgs-community
Subject: Re: Version of Development suite vs. target OS
 
I switch SDPs with qwincfg. 
Is this same as selecting SDP from Window -> preferences  -> QNX?

Could anyone confirm that one can in IDE 4.7 or 4.6 select SDP 6.3.2 (which is installed, of course) and build a "hello 
world" sample c++ app, and it will run on clean 6.3.2 ?

Because, for me it does not run. The c++ app refers to libc.so.3.
Can this be because of some c++ options, such as kind of c++ library?

Plain C apps build with  this setup, refer to libc.so.2 and work.
C++ apps built in the 4.01 IDE also refer to libc.so.2 (and libcpp.so.4) and run on 6.3.2.

- S.
Attachment: Text winmail.dat 2.97 KB
Re: Version of Development suite vs. target OS  
Andy, thanks for heads up. But unfortunately this does not work for me, and only with C++.

Let me explain the setup.

SDP 4.6 is installed in C:\Progs\QNX641.
SDP 4.01  installed in C:\Progs\QNX632.

I made a new xml file in C:\Program Files\QNX Software Systems\qconfig,

qnx_sdp_641-over-632.xml  with content:

<?xml version="1.0" ?>
<qnxSystemDefinition>
  <installation>
    <base>C:/progs/QNX641</base>
    <name>QNX SDP 6.4.1 over 6.3.2</name>
    <host>C:/progs/QNX641/host/win32/x86</host>
    <target>C:/progs/QNX632/target/qnx6</target>
  </installation>
</qnxSystemDefinition>

Then I start IDE 4.6, select this file in Windows/Preferences/QNX and restart.
The preferences dialog won't let to enter the path, only to select a config file.

Then, I can successfully create a plain C app for 6.3.2.

But when I create a new QNX  c++ project, build fails:

C:\progs\QNX641\host\win32\x86\usr\bin\ntox86-ld: cannot find -lcpp 

Then I copy the target stuff from C:/progs/QNX632/target/qnx6 to C:/progs/QNX641/target/qnx6  and edit the config file 
accordingly.

Then build of the c++ app completes successfully, but it appears that the app got linked to libc.so.3 and thus won't run
 on 6.3.2.

Building the plain c app works fine again.

So it seems that your advice works generaly, but not specifically for c++.

Thanks,
-- S

RE: Version of Development suite vs. target OS  
Saul, why do you "hack" into the QNX_CONFIGURATION area and create a mixed config? When I say "mixed" I mean you mix the
 6.4.1 host with 6.3.2 target. You should use your "pure" 6.3.2 installation.


-----Original Message-----
From: Saul A [mailto:community-noreply@qnx.com]
Sent: Wed 17/11/2010 7:00 AM
To: momenticsgs-community
Subject: Re: Version of Development suite vs. target OS
 
Andy, thanks for heads up. But unfortunately this does not work for me, and only with C++.

Let me explain the setup.

SDP 4.6 is installed in C:\Progs\QNX641.
SDP 4.01  installed in C:\Progs\QNX632.

I made a new xml file in C:\Program Files\QNX Software Systems\qconfig,

qnx_sdp_641-over-632.xml  with content:

<?xml version="1.0" ?>
<qnxSystemDefinition>
  <installation>
    <base>C:/progs/QNX641</base>
    <name>QNX SDP 6.4.1 over 6.3.2</name>
    <host>C:/progs/QNX641/host/win32/x86</host>
    <target>C:/progs/QNX632/target/qnx6</target>
  </installation>
</qnxSystemDefinition>

Then I start IDE 4.6, select this file in Windows/Preferences/QNX and restart.
The preferences dialog won't let to enter the path, only to select a config file.

Then, I can successfully create a plain C app for 6.3.2.

But when I create a new QNX  c++ project, build fails:

C:\progs\QNX641\host\win32\x86\usr\bin\ntox86-ld: cannot find -lcpp 

Then I copy the target stuff from C:/progs/QNX632/target/qnx6 to C:/progs/QNX641/target/qnx6  and edit the config file 
accordingly.

Then build of the c++ app completes successfully, but it appears that the app got linked to libc.so.3 and thus won't run
 on 6.3.2.

Building the plain c app works fine again.

So it seems that your advice works generaly, but not specifically for c++.

Thanks,
-- S



Attachment: Text winmail.dat 3.36 KB
Re: Version of Development suite vs. target OS  
This still means correct compilers are not called. Also please set env 
variables QNX_HOST, QNX_TARGET and MAKEFLAGS to point to 632.

On 17/11/2010 7:00 AM, Saul A wrote:
> Andy, thanks for heads up. But unfortunately this does not work for me, and only with C++.
>
> Let me explain the setup.
>
> SDP 4.6 is installed in C:\Progs\QNX641.
> SDP 4.01  installed in C:\Progs\QNX632.
>
> I made a new xml file in C:\Program Files\QNX Software Systems\qconfig,
>
> qnx_sdp_641-over-632.xml  with content:
>
> <?xml version="1.0" ?>
> <qnxSystemDefinition>
>    <installation>
>      <base>C:/progs/QNX641</base>
>      <name>QNX SDP 6.4.1 over 6.3.2</name>
>      <host>C:/progs/QNX641/host/win32/x86</host>
>      <target>C:/progs/QNX632/target/qnx6</target>
>    </installation>
> </qnxSystemDefinition>
>
> Then I start IDE 4.6, select this file in Windows/Preferences/QNX and restart.
> The preferences dialog won't let to enter the path, only to select a config file.
>
> Then, I can successfully create a plain C app for 6.3.2.
>
> But when I create a new QNX  c++ project, build fails:
>
> C:\progs\QNX641\host\win32\x86\usr\bin\ntox86-ld: cannot find -lcpp
>
> Then I copy the target stuff from C:/progs/QNX632/target/qnx6 to C:/progs/QNX641/target/qnx6  and edit the config file
 accordingly.
>
> Then build of the c++ app completes successfully, but it appears that the app got linked to libc.so.3 and thus won't 
run on 6.3.2.
>
> Building the plain c app works fine again.
>
> So it seems that your advice works generaly, but not specifically for c++.
>
> Thanks,
> -- S
>
>
>
>
>
> _______________________________________________
>
> QNX Momentics Getting Started
> http://community.qnx.com/sf/go/post74906
>
Re: Version of Development suite vs. target OS  
Seems I've found a workaround, will verify and post later.

Another C++ issue with 6.3.2 toolchain: it does not like .cpp suffix of source files.
Suffix .cc works. With .cpp suffix, build complains "nothing to build".
But "Compile selected" on each .cpp file works. Weird.

Thanks,
S.