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

build failure with X32 ABI

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.6.1
    • 5.6.0, 5.8.0 Alpha
    • Network: Cache
    • None
    • Gentoo x32 version; gcc 5.3.0 or 4.9.1 (makes no difference)
    • 1721d56d2895f3b1f5b09022dc558bf40cd8194c

    Description

      After configure -developer-build etc. and starting the build, eventually we come to this:

      g++ -c -pipe -g -std=c++1y -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wvla -Werror -Wno-error=cpp -Wno-error=deprecated-declarations -Wno-error=strict-overflow -D_REENTRANT -fPIC -DQT_NO_TSLIB -DQT_NO_USING_NAMESPACE -DQT_BUILD_NETWORK_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_CORE_LIB -Wall -Wextra -Werror -Woverloaded-virtual -Wshadow -Wundef -Wnon-virtual-dtor -Wpointer-arith -Wformat-security -Wno-long-long -Wno-variadic-macros -pedantic-errors -Wchar-subscripts -Wold-style-cast -Wcast-align -I/home/rutledge/dev/qt5/qtbase/src/network -I. -I/home/rutledge/dev/qt5/qtbase/src/network/kernel -I../../include -I../../include/QtNetwork -I../../include/QtNetwork/5.8.0 -I../../include/QtNetwork/5.8.0/QtNetwork -I../../include/QtCore/5.8.0 -I../../include/QtCore/5.8.0/QtCore -I../../include/QtCore -I.moc -I/home/rutledge/dev/qt5/qtbase/mkspecs/linux-g++ -DQT_NO_CAST_TO_ASCII=1 -DQT_NO_CAST_FROM_ASCII=1 -DQT_STRICT_ITERATORS -DQT_NO_URL_CAST_FROM_STRING=1 -DQT_NO_CAST_FROM_BYTEARRAY=1 -DQT_NO_KEYWORDS=1 -DQT_USE_QSTRINGBUILDER -DQT_USE_FAST_OPERATOR_PLUS -Dsignals=int -Dslots=int -Demit=public: -Dforeach=public: -Dforever=public: -xc++ /home/rutledge/dev/qt5/qtbase/src/network/access/qabstractnetworkcache.h -o .obj/header_qabstractnetworkcache.o
      {standard input}: Assembler messages:
      {standard input}:12: Error: cannot represent relocation type BFD_RELOC_X86_64_GOT64 in x32 mode
      Makefile:1122: recipe for target '.obj/header_qabstractnetworkcache.o' failed
      make: *** [.obj/header_qabstractnetworkcache.o] Error 1
      

      Seems like BFD_RELOC_X86_64_GOT64 is a "large code model" relocation which probably assumes that pointers are 64-bit, so I wonder why such a thing would be generated - the compiler should know better, unless we did something which forces it to happen. I wonder if we have a way to specify a different code model.

      Qt 5.5.1 is the latest version that has an ebuild so far on Gentoo, and builds fine with x32 ABI.

      Attachments

        For Gerrit Dashboard: QTBUG-52658
        # Subject Branch Project Status CR V

        Activity

          People

            thiago Thiago Macieira
            srutledg Shawn Rutledge
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes