Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. QT4 4.6.2 && Slackware 13.1
Qt 6.11 is out! See what's new in the release blog

QT4 4.6.2 && Slackware 13.1

Scheduled Pinned Locked Moved Installation and Deployment
5 Posts 2 Posters 8.9k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    luca
    wrote on last edited by
    #1

    Hi all,
    this days it was released Slackware 13.1 .
    I used for one year Slackware 12.2 at work for develop with qt4 and I always compiled without problem QT4 4.6.2 with this command:
    @
    ./configure -prefix /opt/qt4-4.6.2 -qt-gif -no-exceptions -fast -qt-sql-sqlite -qdbus -pch -nomake examples -nomake demos -opensource -confirm-license -qt-sql-mysql -qt-sql-sqlite -qt-libpng
    make
    make install
    @

    but this failed compilation in Slackware 13.1 with an "undefined references" with PNG (tomorrow I will post the exact message) so I tried with:
    @
    ./configure -prefix /opt/qt4-4.6.2 -qt-gif -no-exceptions -fast -qt-sql-sqlite -qdbus -pch -nomake examples -nomake demos -opensource -confirm-license -qt-sql-mysql -qt-sql-sqlite -system-libpng
    @
    and now it compile in Slackware 13.1. I only replaced -qt-libpng with -system-libpng .

    What do you think about...?

    1 Reply Last reply
    0
    • A Offline
      A Offline
      aavit
      wrote on last edited by
      #2

      Hi,

      Most likely, the system PNG lib on your newer Linux system is version 1.4, while it was 1.2 on your previous system. Now because of a bug in Qt, it would pick up the system's PNG header file (png.h) when building, even when asked to use its own PNG lib (-qt-libpng). Since the included version in Qt 4.6 is PNG 1.2, that will cause a failure.

      That bug is fixed in Qt 4.7 (in which the bundled PNG lib is also updated to version 1.4 btw).

      1 Reply Last reply
      0
      • L Offline
        L Offline
        luca
        wrote on last edited by
        #3

        [quote author="aavit" date="1275395903"]Hi,

        Most likely, the system PNG lib on your newer Linux system is version 1.4, while it was 1.2 on your previous system. Now because of a bug in Qt, it would pick up the system's PNG header file (png.h) when building, even when asked to use its own PNG lib (-qt-libpng). Since the included version in Qt 4.6 is PNG 1.2, that will cause a failure.

        That bug is fixed in Qt 4.7 (in which the bundled PNG lib is also updated to version 1.4 btw).
        [/quote]

        Thanks for the answer...
        I checked that the libpng version of Slackware 13.1 is 1.4.2 so I think this is the bug you said.

        1 Reply Last reply
        0
        • L Offline
          L Offline
          luca
          wrote on last edited by
          #4

          I'm compiling QT 4.6.3 with the configure:
          @
          ./configure -qt-libpng .....ecc....
          @

          and the problem seems solved...

          When building ends I'll confirm this.

          1 Reply Last reply
          0
          • L Offline
            L Offline
            luca
            wrote on last edited by
            #5

            No, compilation fails:
            @
            /mnt/temporanea/qt-everywhere-opensource-src-4.6.3/lib/libQtGui.a(qpnghandler.o): In function QPngHandlerPrivate::readPngHeader()': qpnghandler.cpp:(.text+0x866): undefined reference to png_set_longjmp_fn'
            /mnt/temporanea/qt-everywhere-opensource-src-4.6.3/lib/libQtGui.a(qpnghandler.o): In function QPngHandlerPrivate::readPngImage(QImage*)': qpnghandler.cpp:(.text+0xffb): undefined reference to png_set_longjmp_fn'
            /mnt/temporanea/qt-everywhere-opensource-src-4.6.3/lib/libQtGui.a(qpnghandler.o): In function QPNGImageWriter::writeImage(QImage const&, int, QString const&, int, int)': qpnghandler.cpp:(.text+0x1fc1): undefined reference to png_set_longjmp_fn'
            collect2: ld returned 1 exit status
            @

            1 Reply Last reply
            0

            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups
            • Search
            • Get Qt Extensions
            • Unsolved