Error while building sisx file
-
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 . -
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 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
-
[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...
-
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 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
-
[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
could you please go through it and please let us know where are we making mistake
-
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 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>&1and 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/f4uMSxGksince 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....
-
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 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.
-
[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 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...