Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Error while building sisx file
QtWS25 Last Chance

Error while building sisx file

Scheduled Pinned Locked Moved Mobile and Embedded
14 Posts 2 Posters 7.6k Views
  • 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.
  • P Offline
    P Offline
    pazhs
    wrote on last edited by
    #1

    Hi Folks,

    We are using Carbide C++ V2.3, QT for Symbian, QT V4.7.0 and S60 3rd Release FP2 and we are using GCCE for the Phone release build...

    While building "sisx" for Nokia E72 and E52 we are getting the following error and the sisx is not building

    relocation truncated to fit: R_ARM_THM_CALL against symbol _ZN4User15HandleExceptionEPv@@euser{000a0000}[100039e5].dll' defined in ER_RO section in \S60\devices\S60_3rd_FP2_SDK_v1.1\epoc32\release\A RMV5\LIB\euser.dso Message line 0 C/C++ Problem 1292422505001 relocation truncated to fit: R_ARM_THM_CALL against symbol _ZN4User4ExitEi@@euser{000a0000}[100039e5].dll' defined in ER_RO section in \S60\devices\S60_3rd_FP2_SDK_v1.1\epoc32\release\A RMV5\LIB\euser.dso Message line 0 C/C++ Problem
    1292422505000 relocation truncated to fit: R_ARM_THM_CALL against symbol _ZN8UserHeap15SetupThreadHeapEiR24SStdEpocThreadC reateInfo@@euser{000a0000}[100039e5].dll' defined in ER_RO section in \S60\devices\S60_3rd_FP2_SDK_v1.1\epoc32\release\A RMV5\LIB\euser.dso Message line 0 C/C++ Problem 1292422504998 relocation truncated to fit: R_ARM_THM_CALL against symbol _ZN4User9InvariantEv@@euser{000a0000}[100039e5].dll' defined in ER_RO section in \S60\devices\S60_3rd_FP2_SDK_v1.1\epoc32\release\A RMV5\LIB\euser.dso Message line 0 C/C++ Problem

    In some other forum, we have been asked to use the updated eexe.lib while building and if that doesn't work, have been asked to build in ARM mode (by adding ALWAYS_BUILD_AS_ARM in the MMP file) ...

    but that method also failed.... could someone help us to build .sisx... we could build the .sisx, if it doesn't exceed 1.7MB... if we add more classes/code, .sisx fails to build and shows the above said error...

    and the following is the list of libraries we are using in our MMP file

    LIBRARY eikcore.lib
    LIBRARY euser.lib
    LIBRARY apgrfx.lib
    LIBRARY cone.lib
    LIBRARY apmime.lib
    LIBRARY PlatformEnv.lib
    LIBRARY efsrv.lib
    LIBRARY commondialogs.lib
    LIBRARY esock.lib
    LIBRARY commdb.lib
    LIBRARY apengine.lib
    LIBRARY apsettingshandlerui.lib
    LIBRARY insock.lib
    LIBRARY aknnotify.lib
    LIBRARY eiksrv.lib
    LIBRARY libstdcpp.lib
    LIBRARY QtSql.lib
    LIBRARY QtXml.lib
    LIBRARY QtGui.lib
    LIBRARY QtNetwork.lib
    LIBRARY QtCore.lib
    LIBRARY libpthread.lib
    LIBRARY libc.lib
    LIBRARY libm.lib
    LIBRARY libdl.lib
    STATICLIBRARY qtmain.lib

    appreciate you responses... thanks in advance...

    regards,
    Sundar

    1 Reply Last reply
    0
    • K Offline
      K Offline
      koshui
      wrote on last edited by
      #2

      Hi, I already answered in Forum Nokia (as jakoskin).

      Modifying MMP file won't work as qmake will overwrite it (unless you invoke abld directly).
      Use MMP_RULES += ALWAYS_BUILD_AS_ARM in pro file.

      You still need to look at the flags passed to the compiler to verify that indeed you are building in arm mode. Look for -mthumb and if it exists the you are building in thumb mode. IIRC abld insists building for thumb when using GCCE so you might need to modify the build scripts.

      do qmake && make release-gcce > log.txt 2>&1
      and post the full build log to e.g. pastebin.com .

      1 Reply Last reply
      0
      • K Offline
        K Offline
        koshui
        wrote on last edited by
        #3

        Something that I just remembered. You need to delete the outputted .o files when changing the mode, otherwise they won't get recompiled. Delete epoc32\build<your project> - directory and rebuild everything after adding MMP_RULES += ALWAYS_BUILD_AS_ARM.

        note: If you are using compiled-in resources remove them from exe and use separate qrc files. While resource embedding works on other platforms nicely in Symbian you get into trouble fast.

        1 Reply Last reply
        0
        • P Offline
          P Offline
          pazhs
          wrote on last edited by
          #4

          [quote author="koshui" date="1292762451"]Something that I just remembered. You need to delete the outputted .o files when changing the mode, otherwise they won't get recompiled. Delete epoc32\build<your project> - directory and rebuild everything after adding MMP_RULES += ALWAYS_BUILD_AS_ARM.

          note: If you are using compiled-in resources remove them from exe and use separate qrc files. While resource embedding works on other platforms nicely in Symbian you get into trouble fast.[/quote]

          Thank you for the suggestion ... we have tried the first option of deleting project directory from the BUILD path/directory and added MMP_RULES += ALWAYS_BUILD_AS_ARM ... this method still fails and and the same error is creeping up during the sisx build

          1 Reply Last reply
          0
          • P Offline
            P Offline
            pazhs
            wrote on last edited by
            #5

            [quote author="koshui" date="1292756136"]Hi, I already answered in Forum Nokia (as jakoskin).

            Modifying MMP file won't work as qmake will overwrite it (unless you invoke abld directly).
            Use MMP_RULES += ALWAYS_BUILD_AS_ARM in pro file.

            You still need to look at the flags passed to the compiler to verify that indeed you are building in arm mode. Look for -mthumb and if it exists the you are building in thumb mode. IIRC abld insists building for thumb when using GCCE so you might need to modify the build scripts.

            do qmake && make release-gcce > log.txt 2>&1
            and post the full build log to e.g. pastebin.com .[/quote]

            How do we see the flags/parameters which are passed to the compiler.. we are compiling our Symbian application through the Carbide C++ IDE...

            1 Reply Last reply
            0
            • K Offline
              K Offline
              koshui
              wrote on last edited by
              #6

              Carbide has "Console" Window which shows all the commands, but I think it is bit hard to use and I would recommend building from command line directly with qmake && make release-gcce > log.txt 2>&1 .
              GCCE toolchain all exes are prefixed with "arm-none-symbianelf-" so they are easy to spot from the output.

              1 Reply Last reply
              0
              • P Offline
                P Offline
                pazhs
                wrote on last edited by
                #7

                [quote author="koshui" date="1292831773"]Carbide has "Console" Window which shows all the commands, but I think it is bit hard to use and I would recommend building from command line directly with qmake && make release-gcce > log.txt 2>&1 .
                GCCE toolchain all exes are prefixed with "arm-none-symbianelf-" so they are easy to spot from the output.
                [/quote]

                Thank you ... i will try and let you know the result

                1 Reply Last reply
                0
                • P Offline
                  P Offline
                  pazhs
                  wrote on last edited by
                  #8

                  [quote author="koshui" date="1292756136"]Hi, I already answered in Forum Nokia (as jakoskin).

                  Modifying MMP file won't work as qmake will overwrite it (unless you invoke abld directly).
                  Use MMP_RULES += ALWAYS_BUILD_AS_ARM in pro file.

                  You still need to look at the flags passed to the compiler to verify that indeed you are building in arm mode. Look for -mthumb and if it exists the you are building in thumb mode. IIRC abld insists building for thumb when using GCCE so you might need to modify the build scripts.

                  do qmake && make release-gcce > log.txt 2>&1
                  and post the full build log to e.g. pastebin.com .[/quote]

                  We have posted the "log.txt" @ PasteBin.com and the link is

                  http://pastebin.com/Fs7tXx97

                  could you please go through it and please let us know where are we making mistake

                  1 Reply Last reply
                  0
                  • K Offline
                    K Offline
                    koshui
                    wrote on last edited by
                    #9

                    Hi, it says : "nothing to do" as you've already compiled all .o files. You need to clean and redo the build to get the compiler output.
                    From current state in the project directory do this:
                    abld reallyclean gcce urel
                    abld build -v gcce urel > log.txt 2>&1
                    and post that. The log should have much more stuff in it.
                    For abld reference see http://library.forum.nokia.com/index.jsp?topic=/S60_5th_Edition_Cpp_Developers_Library/GUID-35228542-8C95-4849-A73F-2B4F082F0C44/sdk/doc_source/ToolsAndUtilities94/BuildTools/UsingAbld.guide.html

                    1 Reply Last reply
                    0
                    • P Offline
                      P Offline
                      pazhs
                      wrote on last edited by
                      #10

                      [quote author="koshui" date="1293044847"]Hi, it says : "nothing to do" as you've already compiled all .o files. You need to clean and redo the build to get the compiler output.
                      From current state in the project directory do this:
                      abld reallyclean gcce urel
                      abld build -v gcce urel > log.txt 2>&1
                      and post that. The log should have much more stuff in it.
                      For abld reference see http://library.forum.nokia.com/index.jsp?topic=/S60_5th_Edition_Cpp_Developers_Library/GUID-35228542-8C95-4849-A73F-2B4F082F0C44/sdk/doc_source/ToolsAndUtilities94/BuildTools/UsingAbld.guide.html[/quote]

                      As instructed by you, we did the

                      abld reallyclean gcce urel
                      abld build -v gcce urel > log.txt 2>&1

                      and posted the log.txt @ patebin.com

                      the links are

                      ( first part ) http://pastebin.com/jHFTwvWX
                      ( second part ) http://pastebin.com/bxtTyQ6D
                      ( final part of log.txt ) http://pastebin.com/f4uMSxGk

                      since the log.txt is longer, pastebin.com was throwing error and we had to paste the log.txt in three parts..

                      Could you go throug the log.txt and please let us know what to do and in the mean time thank you for your time....

                      1 Reply Last reply
                      0
                      • K Offline
                        K Offline
                        koshui
                        wrote on last edited by
                        #11

                        From the logs we can see that your application is now correctly built in arm mode but the static library eexe.lib is built in thumb mode and thus cannot reach the functions in euser.dso.

                        That means, you need to get your hands on arm built eexe.lib which was the starting point of the issue in FN thread.

                        edit:
                        I still recommend trying to get your hands on to the latest versions of S60 SDKs and try copying the library from there. ARM built eexe.lib used to be available from Symbian for this exact reason, but alas Symbian websites don't exist anymore.

                        1 Reply Last reply
                        0
                        • P Offline
                          P Offline
                          pazhs
                          wrote on last edited by
                          #12

                          [quote author="koshui" date="1293103695"]From the logs we can see that your application is now correctly built in arm mode but the static library eexe.lib is built in thumb mode and thus cannot reach the functions in euser.dso.

                          That means, you need to get your hands on arm built eexe.lib which was the starting point of the issue in FN thread.

                          edit:
                          I still recommend trying to get your hands on to the latest versions of S60 SDKs and try copying the library from there. ARM built eexe.lib used to be available from Symbian for this exact reason, but alas Symbian websites don't exist anymore.[/quote]

                          We are using S60_3rd_FP2_SDK_v1.1, and hope we are using the latest version in this category and we tried the latest library available with N97 SDK ( but we are not sure whether its ARM built eexe.lib ) ... but the same error popped-up with the N97 SDk too.

                          1 Reply Last reply
                          0
                          • K Offline
                            K Offline
                            koshui
                            wrote on last edited by
                            #13

                            [quote author="pazhs" date="1293114294"]
                            We are using S60_3rd_FP2_SDK_v1.1, and hope we are using the latest version in this category and we tried the latest library available with N97 SDK ( but we are not sure whether its ARM built eexe.lib ) ... but the same error popped-up with the N97 SDk too.
                            [/quote]

                            Sorry for late answer... Christmas...

                            I checked my 5.0 and N97 SDKs both of them had THUMB built eexe.lib. Sorry if I mislead you to think upgrading to those would work :S

                            Good news is that Symbian3 SDK eexe.lib is built as ARM. I checked Forum Nokia Symbian3 0.8 SDK.

                            Easy way to verify is to open the eexe.lib in your favorite text editor and search for "--thumb" or "THUMB" (upper case). If you don't find it then it is built for arm.

                            1 Reply Last reply
                            0
                            • P Offline
                              P Offline
                              pazhs
                              wrote on last edited by
                              #14

                              [quote author="koshui" date="1293534906"][quote author="pazhs" date="1293114294"]
                              We are using S60_3rd_FP2_SDK_v1.1, and hope we are using the latest version in this category and we tried the latest library available with N97 SDK ( but we are not sure whether its ARM built eexe.lib ) ... but the same error popped-up with the N97 SDk too.
                              [/quote]

                              Sorry for late answer... Christmas...

                              I checked my 5.0 and N97 SDKs both of them had THUMB built eexe.lib. Sorry if I mislead you to think upgrading to those would work :S

                              Good news is that Symbian3 SDK eexe.lib is built as ARM. I checked Forum Nokia Symbian3 0.8 SDK.

                              Easy way to verify is to open the eexe.lib in your favorite text editor and search for "--thumb" or "THUMB" (upper case). If you don't find it then it is built for arm.
                              [/quote]

                              Hi thanks for your time and reply... As suggested by you, we tried the eexe.lib which is available with Symbian ^ 3 SDK... and it worked....

                              Thank you very much for your valuable time

                              Happy Holidays and wish you a very happy New Year...

                              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