Bug 83004

Summary: qt2 library is build against gcc 2.96
Product: [Retired] Red Hat Linux Reporter: Alexander Stohr <alexander.stohr>
Component: qtAssignee: Than Ngo <than>
Status: CLOSED NOTABUG QA Contact: Ben Levenson <benl>
Severity: high Docs Contact:
Priority: medium    
Version: 8.0CC: mitr
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-01-31 12:46:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alexander Stohr 2003-01-29 14:11:59 UTC
Description of problem:
qt2 libary is built against gcc 2.96,
which means that it is not made with the
supplied compiler that is gcc 3.2 -
thus the libary is incompatible 
due to the changed c++ name mangling
between those two compiler versions.

Version-Release number of selected component (if applicable):
qt2, gcc 2.96 & gcc 3.2

How reproducible:
compile a qt based cpp program against qt2 library.

Steps to Reproduce:
1.
2.
3.
    
Actual results:
massive list of unresolved symbols on linking stage

Expected results:
program should link against the provided librarys.
the librarys are considered to be an "alien" to the system.

Additional info:
i assmue this is caused by a broken SRPM that nobody has
noticed until now.

i do suggest those symlink sheme for /usr/lib location

  qt2 -> qt2-gcc3.2
  qt2-gcc3.2 -> qt-<qt2-version>-gcc3.2
  qt-<qt2-version>-gcc3.2

  qt3 -> qt3-gcc3.2
  qt3-gcc3.2 -> qt-<qt3-version>-gcc3.2
  qt-<qt3-version>-gcc3.2

and a similar sheme for any gcc 2.96 compiled libraries.
(in an environment with multiple compilers it is highly
important to have a smoothly ordered system of qt-libs.)

Comment 1 Than Ngo 2003-01-31 12:46:04 UTC
Hmm, qt2 is just a compat library, which is needed to run old qt applications
from 7.3. You have to use qt 3 if you want to build your qt applications with gcc3.2