Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Qt 5.2.0 dev env for linux with target binaries/plugins dependent in libstdc++ and not libstdcpp(-ne): (3 Items)
   
Qt 5.2.0 dev env for linux with target binaries/plugins dependent in libstdc++ and not libstdcpp(-ne)  
Hello,

I am using the released binaries for Qt. 5.2.0 on Linux and notice that they are dependent on the libstdcpp library.

The project I am working on consistently depends on the libstdc++ (GNU C++) library.
I've noticed that the Qt libraries depend on the libstdcpp (Dinkum C++) library.

Our Qt application is compiled/linked with the GNU C++ library, but the Dinkum C++ library is pulled in from the 
applications Qt library dependencies. This is causing run-time failures as two C++ libraries are loaded by the 
application.

Do you have a Qt 5.2.0 development environment compiled/linked against the GNU C++ library?

I do not have the ability to convert the rest of the project to the Dinkum C++ library.

Thank you,
Steven Zajac
Re: Qt 5.2.0 dev env for linux with target binaries/plugins dependent in libstdc++ and not libstdcpp(-ne)  
Hello Knowledgeable Forum Browsers and Forum Moderators,
   I was able to build Qt 5.2.0 from the supplied package using the instructions here:
http://community.qnx.com/sf/wiki/do/viewPage/projects.qt/wiki/Qt5.2.0BuildInstructionsForQNXSDKForAppsAndMedia1.0

If you are unable to provide Qt binaries that do not depend on the libcpp-ne and/or libcpp libraries, can you tell me 
how to configure the Qt make to use ONLY the GNU C++ (libstdc++) library?

I've rebuilt Qt numerous times. These have mostly the same configuration as described in the link above (building for 
Windows). I've added the -no-c++11 flag and have attempted to remove the -platform [arg] flag altogether.

I've also changed some of the make configuration files (/qtbase/mkspecs/common/*.conf) to try and force it to use the 
GNU flavor compiler/linker.


After building Qt, I see that libcpp-ne is included in at least the Qt5Core library.

I fear I am spinning my wheels and overlooking what could be a simple solution. Can you please point me in the right 
direction?

Thanks,
Steven Zajac
Re: Qt 5.2.0 dev env for linux with target binaries/plugins dependent in libstdc++ and not libstdcpp(-ne)  
If anyone else is trying to do this, here is our solution:

Follow the steps as in the Qt 5.2.0 build instructions here: http://community.qnx.com/sf/wiki/do/viewPage/projects.qt/
wiki/Qt5.2.0BuildInstructionsForQNXSDKForAppsAndMedia1.0

We installed on Windows.

After running 'configure', and before running 'make', go to your PATH/qtbase/mkspecs/common folder and update the 
following files to use explicit compiler/linker commands (to compile/link with GNU tools instead of Dinkum), and remove 
the '-lang-c++' flag wherever found:
   g++-base.conf, qcc-base.conf, qcc-base-qnx.conf, qcc-base-qnx-armv7le.conf

Add the '-lstdc++' flag to QMAKE_LIBS in qcc-base-qnx.conf.

In your filesystem, rename the libcpp-ne.so* files found in C:\QNX660\*. That way, Qt won't be able to link against it 
(because it won't find it).

Now make / make install and hope for the best.