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

command line length exceeded when linking unix target with many objects under windows

XMLWordPrintable

      While porting a large Qt project to Android, I ran into the command line length limit while linking in windows. After trying all the quick and dirty tricks to shorten the command line, I found that the Android build uses the "Unix" makefile generator rather than the "Mingw" one. The Mingw generator know that windows has this problem and uses QMAKE_LINK_OBJECT_MAX to determine when it should use a link object script. The Unix generator appends every object to the command regardless of size.

      If the unix makefile generator allowed generation of a linker object script, this would resolve this frustrating problem in an elegant way.

      An alternative would be to have qmake use the MINGW generator for the windows android-g++ spec. This almost works, but runs into the problem that qmake always appends ".exe" to the android shared library name, breaking the installation and deployment steps.

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

            louai Louai Al-Khanji
            boards Craig Boardman
            Votes:
            1 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes