Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - How to run app created with Momentics 4.6 on nto 6.3.2?: (4 Items)
   
How to run app created with Momentics 4.6 on nto 6.3.2?  
What is a good way - if any - to run C programs 
created with 6.4.1 IDE (4.6) on 6.3.2 x86 OS?
I'd like to use a newer compiler and tools than these for 6.3.2.

Programs created by the 4.6 dev. kit depend on libc.so.3 -
which is missing on 6.3.2 system.
So I've copied libc.so.3 from the target directory 
to /lib on the target machine, and my program could run.
But loading a DLL using dlopen() fails. It crashes somewhere inside the dlopen, because of referencing null pointer!

How I can make dlopen happy, or build the program so that it uses libc.so.2 only?

Should I make a 6.3.2 OS image so that /proc/boot/ldqnx.so.2 maps to libc.so.3?

Thanks for any idea..

- Saul
Re: How to run app created with Momentics 4.6 on nto 6.3.2?  
You have to set QNX_TARGET to 6.3.2 but QNX_HOST to 6.4.1 - I don't think we tested such configuration though

On 19/10/10 12:40 PM, Saul A wrote:
> What is a good way - if any - to run C programs 
> created with 6.4.1 IDE (4.6) on 6.3.2 x86 OS?
> I'd like to use a newer compiler and tools than these for 6.3.2.
> 
> Programs created by the 4.6 dev. kit depend on libc.so.3 -
> which is missing on 6.3.2 system.
> So I've copied libc.so.3 from the target directory 
> to /lib on the target machine, and my program could run.
> But loading a DLL using dlopen() fails. It crashes somewhere inside the dlopen, because of referencing null pointer!
> 
> How I can make dlopen happy, or build the program so that it uses libc.so.2 only?
> 
> Should I make a 6.3.2 OS image so that /proc/boot/ldqnx.so.2 maps to libc.so.3?
> 
> Thanks for any idea..
> 
> - Saul
> 
> 
> 
> _______________________________________________
> 
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post71294
> 
Re: How to run app created with Momentics 4.6 on nto 6.3.2?  
Thank you a lot, Elena, your advice helped!

I've renamed the target/qnx6 folder for 6.4.1 and copied there the target stuff from Momentics 4.0.1 installation.

However, my c++ program created in 4.6 IDE failed to rebuild after this (some weird signal or exception in the compiler.
.).
But I don't need that for this project - just plain c stuff. It builds fine and dependency on libc.so.3 is gone.

- S.
Re: How to run app created with Momentics 4.6 on nto 6.3.2?  
Update...

The error when building a c++ app is caused by missing libcpp.so.
This probably is because the compiler is v 4.3.3, but /x86/lib/gcc/4.3.3 libraries are not included in the 4.01 kit. So 
again I've copied this directory to target files for 6.3.2. But then linker again complained about libc.so.3 missing, so
 again I copied libc.so.3 from 6.4.1  to target/qnx6/x86/lib/gcc/4.3.3.

Now the build was successful, and the app runs on the real 6.3.2 target - with the libc.so.3 that was copied there 
before.

(By the way, libcpp for compiler v.4.3.3 maps to libcpp.so.4, which _is_ present in 6.3.2 distribution.)

Will see if this works ...

- S.