On 4 November 2015 at 00:54, YongQin Liu yongqin.liu@linaro.org wrote:
Hi, All
The main difference is caused by the libc.a file.
Following is the information when link the libc.c statically, the size for flo is much bigger than the one on flounder. 21:38:23 liuyq: marshmallow$ ll out/target/product/flo/system/bin/libstagefright_mp3dec_test out/target/product/flounder/system/bin/libstagefright_mp3dec_test -rwxrwxr-x 1 liuyq liuyq 227264 Nov 3 14:43 out/target/product/flo/system/bin/libstagefright_mp3dec_test* -rwxrwxr-x 1 liuyq liuyq 124684 Nov 3 14:56 out/target/product/flounder/system/bin/libstagefright_mp3dec_test* 21:38:51 liuyq: marshmallow$
Following is the information when changed to link the libc.so dynamically, and the size is the same for both flo and flounder. 21:41:28 liuyq: marshmallow$ ll out/target/product/flo/system/bin/libstagefright_mp3dec_test out/target/product/flounder/system/bin/libstagefright_mp3dec_test -rwxrwxr-x 1 liuyq liuyq 67156 Nov 3 21:41 out/target/product/flo/system/bin/libstagefright_mp3dec_test* -rwxrwxr-x 1 liuyq liuyq 67156 Nov 3 21:41 out/target/product/flounder/system/bin/libstagefright_mp3dec_test* 21:41:37 liuyq: marshmallow$
Here is the information about libc.a and libc.so on flo and flounder, the version for flo is bigger than the version for flounder: 21:45:46 liuyq: marshmallow$ ll out/target/product/flo/system/lib/libc.so out/target/product/flounder/system/lib/libc.so -rwxrwxr-x 1 liuyq liuyq 674268 Oct 29 15:34 out/target/product/flo/system/lib/libc.so* -rwxrwxr-x 1 liuyq liuyq 552072 Oct 19 18:32 out/target/product/flounder/system/lib/libc.so* 21:46:03 liuyq: marshmallow$ 21:39:27 liuyq: marshmallow$ ll out/target/product/flo/obj/STATIC_LIBRARIES/libc_intermediates/libc.a out/target/product/flounder/obj_arm/STATIC_LIBRARIES/libc_intermediates/libc.a -rw-rw-r-- 1 liuyq liuyq 8110006 Oct 29 15:29 out/target/product/flo/obj/STATIC_LIBRARIES/libc_intermediates/libc.a -rw-rw-r-- 1 liuyq liuyq 5960258 Oct 19 17:51 out/target/product/flounder/obj_arm/STATIC_LIBRARIES/libc_intermediates/libc.a 21:39:46 liuyq: marshmallow$
I will check what cause the difference, and report here later. but before that if you know something about that or could give some suggestions, that would be very appreciated.
I would suggest the same thing : build libc.a using showcommands to see the difference :)
Thanks, Yongqin Liu On 3 November 2015 at 20:47, fengwei.yin fengwei.yin@linaro.org wrote:
Hi YongQin,
On 2015/11/2 11:35, YongQin Liu wrote:
Hi, Bin
On 2 November 2015 at 11:04, Bin Chen <bin.chen@linaro.org mailto:bin.chen@linaro.org> wrote:
YongQin, You probably can use the option "showcommands" to see there is any difference during the compile/strip process.
I compared the output, there is no big difference except the following 2 header files paths specified for flo platfomr:
-isystem device/asus/flo/kernel-headers -isystem hardware/qcom/msm8960/kernel-headers
I don't think these options make the difference.
nexus9.txt is the output for flounder platform. nexus7.txt is the output for the flo platform.
Thanks, Yongqin Liu
On 2 November 2015 at 13:52, YongQin Liu <yongqin.liu@linaro.org <mailto:yongqin.liu@linaro.org>> wrote: Hi, Bero Any idea why the size of the binaries compiled from the same
source files are different between the flounder version and the flo version?
10:29:01 liuyq: marshmallow$ ll
out/target/product/{flo,flounder}/system/bin/libstagefright_mp3dec_test -rwxrwxr-x 1 liuyq liuyq 231360 Nov 2 10:29 out/target/product/flo/system/bin/libstagefright_mp3dec_test* -rwxrwxr-x 1 liuyq liuyq 124684 Nov 2 10:28
out/target/product/flounder/system/bin/libstagefright_mp3dec_test* 10:29:39 liuyq: marshmallow$
The binaries are 32bit static linked version compiled with the
attached Android.mk
And the size of libc.so files are different as well. 10:37:13 liuyq: marshmallow$ ll out/target/product/{flo,flounder}/system/lib/libc.so -h -rwxrwxr-x 1 liuyq liuyq 659K Oct 29 15:34 out/target/product/flo/system/lib/libc.so* -rwxrwxr-x 1 liuyq liuyq 540K Oct 19 18:32 out/target/product/flounder/system/lib/libc.so* 10:37:21 liuyq: marshmallow$ Some features are not compiled into the libc.so on the flounder
platform?
My 2 cents: Is it possible that you dump the build command of libc.so for flo and flounder? For your build log, flo is 32bit android while flounder is 64bit. 32bit libc 64bit android is built as 2nd arch. It may be something different there.
Regards Yin, Fengwei
-- Best Regards, Yongqin Liu --------------------------------------------------------------- #mailing list linaro-android@lists.linaro.org <mailto:
linaro-dev@lists.linaro.org> http://lists.linaro.org/mailman/listinfo/linaro-android
_______________________________________________ linaro-android mailing list linaro-android@lists.linaro.org <mailto:
linaro-android@lists.linaro.org> https://lists.linaro.org/mailman/listinfo/linaro-android
-- Regards, Bin
-- Best Regards, Yongqin Liu
#mailing list linaro-android@lists.linaro.org mailto:linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-android
linaro-android mailing list linaro-android@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-android
-- Best Regards, Yongqin Liu
#mailing list linaro-android@lists.linaro.org linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-android