Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-61044

licheck fails on 32bit

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.9.1
    • 5.9.0 RC
    • Build System
    • None
    • e9c2a363cb2baf16763112c9fb13e8eda323bb45

    Description

      I'm cross compiling Qt for various platforms/archs.

      The license check is failing on 32bit platforms like:

      # uname -a
      Linux sw142-32bit 4.4.38-smp #1 SMP Sun Dec 11 17:35:44 CST 2016 i686 Common 32-bit KVM processor GenuineIntel GNU/Linux

      The output I get:

      + cd /tmp/qt-5.9.0-32bit_generic
      + ./configure -release -commercial -confirm-license -device-option CROSS_COMPILE=/usr/bin/ -sysroot / -xplatform devices/linux-nuc-g++ -make libs -make tools -skip qtwebengine -prefix /usr/local -libdir /usr/local/lib -sql-sqlite -opengl es2 -alsa -cups -icu -dbus -openssl -xcb -eglfs -kms -qpa eglfs -v
      + cd qtbase
      + /tmp/qt-5.9.0-32bit_generic/qtbase/configure -top-level -release -commercial -confirm-license -device-option CROSS_COMPILE=/usr/bin/ -sysroot / -xplatform devices/linux-nuc-g++ -make libs -make tools -skip qtwebengine -prefix /usr/local -libdir /usr/local/lib -sql-sqlite -opengl es2 -alsa -cups -icu -dbus -openssl -xcb -eglfs -kms -qpa eglfs -v
      Creating qmake...
      gmake: Nothing to be done for 'first'.
      Command line: -release -commercial -confirm-license -device-option CROSS_COMPILE=/usr/bin/ -sysroot / -xplatform devices/linux-nuc-g++ -make libs -make tools -skip qtwebengine -prefix /usr/local -libdir /usr/local/lib -sql-sqlite -opengl es2 -alsa -cups -icu -dbus -openssl -xcb -eglfs -kms -qpa eglfs -v
      + /tmp/qt-5.9.0-32bit_generic/qtbase/bin/licheck64  yes  /tmp/qt-5.9.0-32bit_generic/qtbase /tmp/qt-5.9.0-32bit_generic/qtbase  linux-g++ devices/linux-nuc-g++
      > sh: /tmp/qt-5.9.0-32bit_generic/qtbase/bin/licheck64: cannot execute binary file: Exec format error
      Note: Also available for Linux: linux-clang linux-icc
      
      ERROR: You are not licensed to use this software.
      + exit 1

      So, allthough the platform is 32bit, licheck64 gets called, which fails, which then is interpreted as 'no license'.

      The only location licheck64 is mentioned is in qtbase/configure.pri:143

      The test that should conclude 'I'm running on 32bits' looks like this:
                      equals(QMAKE_HOST.arch, x86):

      The value of QMAKE_HOST.arch in my case is "i686"

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            buddenha Oswald Buddenhagen
            jirauser24743 user-678dd (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes