Changing default version of gcc (unknown/unresolved symbols)

Problem:

Need to change the default compiler under QNX 6.3 from gcc 2.95.3 to gcc 3.3.5

Attempted:

Have changed the text in $QNX_HOST/etc/qcc/gcc/default to read:
       DIR=3.3.5
as suggested in another post, however gcc -v states that the version remains as 2.95.3, even after reboot.

any help would be appreciated, Im very new to qnx…

Cheers,
Josh

I wouldn’t recommend trying to change the default compiler.

I assume that you are using Momentics SE, since with PE, you simply right-click on the project, select properties->compiler and choose GCC 3.3.5. .

If you are using the QNX recursive makefile system with SE, then you can simply defined GCC_VERSION=3.3.5 in your common.mk file and your done.

Check out option -set-default and -V of qcc.

cheers for the help guys.
I am using scons and have changed the compiler flags to look for ntox86-gcc-3.3.5 and ntox86-g+±3.3.5 instead of the default, and that works fine for changing the compiler.

However it has not solved my initial problem, of unresolved/unknown symbols at run time. I have read on the forums that using a later version of gcc has helped in some cases, evidently I am not one of those cases.

I can use all symbols from static libraries, however its the dynamic libraries that are causing the problems…

Any ideas are welcome.

Cheers,
Josh

update:

looks to be a problem with object linking with respect to inheritance, namely virtual and pure virtual functions…

any ideas?

Josh,

Out of curiosity, are you attempting to run your executable on the same QNX box that your compiling on?

If not, it sounds like your missing a library on the final platform where you run.

I am using GCC 3.3.5 and C++ and I have not had any problems compiling and running (either from the IDE or directly on the QNX machine). Of course I am not compiling on 1 QNX machine and attempting to run on another (at least not yet).

Tim