Qt 4.8.3 not binary compatible with 4.7.4 version in Ubuntu 11.10

Bug #997022 reported by Marius B. Kotsbak
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Qt
Invalid
Undecided
Unassigned
qt4-x11 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

I have a Qt application that when compiled for Precise is not runnable in Oneiric:

$ ./Qt_client
./Qt_client: symbol lookup error: ./Qt_client: undefined symbol: _ZN10QTableView13doItemsLayoutEv

$ ldd Qt_client |grep -i qt
        libQtGui.so.4 => /usr/lib/i386-linux-gnu/libQtGui.so.4 (0x00f4b000)
        libQtCore.so.4 => /usr/lib/i386-linux-gnu/libQtCore.so.4 (0x00705000)

dpkg -S /usr/lib/i386-linux-gnu/libQtGui.so.4
libqtgui4: /usr/lib/i386-linux-gnu/libQtGui.so.4

$ dpkg -S /usr/lib/i386-linux-gnu/libQtCore.so.4
libqtcore4: /usr/lib/i386-linux-gnu/libQtCore.so.4

$ apt-cache policy libqtgui4
libqtgui4:
  Installert: 4:4.7.4-0ubuntu8.1
  Kandidat: 4:4.7.4-0ubuntu8.1
  Versjonstabell:
 *** 4:4.7.4-0ubuntu8.1 0
        500 http://no.archive.ubuntu.com/ubuntu/ oneiric-updates/main i386 Packages
        100 /var/lib/dpkg/status
     4:4.7.4-0ubuntu8 0
        500 http://no.archive.ubuntu.com/ubuntu/ oneiric/main i386 Packages

$ apt-cache policy libqtcore4
libqtcore4:
  Installert: 4:4.7.4-0ubuntu8.1
  Kandidat: 4:4.7.4-0ubuntu8.1
  Versjonstabell:
 *** 4:4.7.4-0ubuntu8.1 0
        500 http://no.archive.ubuntu.com/ubuntu/ oneiric-updates/main i386 Packages
        100 /var/lib/dpkg/status
     4:4.7.4-0ubuntu8 0
        500 http://no.archive.ubuntu.com/ubuntu/ oneiric/main i386 Packages

Qt states at http://qt.nokia.com/products/changes/changes-4.8.1/ that "The Qt version 4.8 series is binary compatible with the 4.7.x series. Applications compiled for 4.7 will continue to run with 4.8.".

Precise installation where it is built and runs fine:

$ apt-cache policy libqtcore4
libqtcore4:
  Installert: 4:4.8.1-0ubuntu4.1
  Kandidat: 4:4.8.1-0ubuntu4.1
  Versjonstabell:
 *** 4:4.8.1-0ubuntu4.1 0
        500 http://no.archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages
        100 /var/lib/dpkg/status
     4:4.8.1-0ubuntu4 0
        500 http://no.archive.ubuntu.com/ubuntu/ precise/main i386 Packages

$ apt-cache policy libqtgui4
libqtgui4:
  Installert: 4:4.8.1-0ubuntu4.1
  Kandidat: 4:4.8.1-0ubuntu4.1
  Versjonstabell:
 *** 4:4.8.1-0ubuntu4.1 0
        500 http://no.archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages
        100 /var/lib/dpkg/status
     4:4.8.1-0ubuntu4 0
        500 http://no.archive.ubuntu.com/ubuntu/ precise/main i386 Packages

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: libqtgui4 4:4.8.1-0ubuntu4.1
ProcVersionSignature: Ubuntu 3.2.0-24.37-generic-pae 3.2.14
Uname: Linux 3.2.0-24-generic-pae i686
NonfreeKernelModules: nvidia
ApportVersion: 2.0.1-0ubuntu7
Architecture: i386
Date: Wed May 9 11:43:37 2012
ProcEnviron:
 TERM=xterm
 SHELL=/bin/bash
 PATH=(custom, user)
 LANG=nb_NO.UTF-8
 LANGUAGE=nb_NO:nb:no_NO:no:nn_NO:nn:en
SourcePackage: qt4-x11
UpgradeStatus: Upgraded to precise on 2012-05-08 (0 days ago)

Revision history for this message
Marius B. Kotsbak (mariusko) wrote :
tags: added: regression
Revision history for this message
Daniel Letzeisen (dtl131) wrote :

Then you should compile on Oneiric and then run it on Precise (or use static linking when building on Precise).

"Applications compiled for 4.7 will continue to run with 4.8."
That doesn't mean that it works the other way around...

Revision history for this message
Marius B. Kotsbak (mariusko) wrote :
Revision history for this message
Marius B. Kotsbak (mariusko) wrote :

Hmm, you might have a point there. The problem is that my development is upgraded but not the production environment.

Revision history for this message
Marius B. Kotsbak (mariusko) wrote :

It is stated here too: http://qt-project.org/faq/answer/is_qt_binary_compatible

"Qt is also not forwards compatible, meaning that applications created with a newer version of Qt will not necessarily run or compile against older Qt versions."

Changed in qt4-x11 (Ubuntu):
status: New → Invalid
Changed in qt:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.