rk3288的pcba模块编译调试笔记【学习笔记】

平台信息:
内核:linux3.0.68 
系统:android/android6.0
平台:rk3288

作者:庄泽彬(欢迎转载,请注明作者)

邮箱:2760715357@qq.com

摘要:最近在负责rk3288的pcba模块,由于在编译过程中遇到了一些问题,因此总结记录遇到的问题以及解决方法。

代码路径:rk3288-e810-android6.0/external/rk-pcba-test/

1、问题。

在正确的选择好要编译的产品之后进入external/rk-pcba-test/目录,执行mm -B强制编译这个模块会出现下面的问题:

 make: *** No rule to make target 'out/target/product/rk3288/obj/STATIC_LIBRARIES/libpixelflinger_static_intermediates/export_includes', needed by 'out/target/product/rk3288/obj/EXECUTABLES/pcba_core_intermediates/import_includes'.  Stop. 
怎么办呢?问同事,百度,其实还是靠自己看看代码的结构吧。
2、解决思路:
查看pcba的Android.mk文件相关的代码片段:

LOCAL_STATIC_LIBRARIES += libminuitwrp libpixelflinger_static libpng libjpegtwrp libbluetooth

在编译这个模块的时候会依赖:libpixelflinger_static这个静态库。

 

我们现在在android源码的目录下搜索这个库的相关的信息:

 1 zhuangzb@UYFSanbu02:~/project/E800/rk3288-e810-android6.0$ grep "libpixelflinge
 2 Binary file ./.git/index matches
 3 ./build/target/product/embedded.mk:51:    libpixelflinger \
 4 ./system/core/libpixelflinger/tests/codegen/Android.mk:9:    libpixelflinger
 5 ./system/core/libpixelflinger/tests/arch-arm64/assembler/Android.mk:13:    libp
 6 ./system/core/libpixelflinger/Android.mk:57:LOCAL_MODULE:= libpixelflinger
 7 ./system/core/libpixelflinger/Android.mk:83:LOCAL_MODULE:= libpixelflinger_stat
 8 Binary file ./rockdev/Image-rk3288/system.img matches
 9 ./external/rk-pcba-test/Android.mk:231:LOCAL_STATIC_LIBRARIES += libminuitwrp l
10 ./frameworks/native/opengl/libagl/Android.mk:29:LOCAL_SHARED_LIBRARIES := libcu
11 Binary file ./out/target/product/rk3288/symbols/data/nativetest/test-pixelfling
12 Binary file ./out/target/product/rk3288/symbols/data/nativetest/test-opengl-cod
13 Binary file ./out/target/product/rk3288/symbols/system/lib/libpixelflinger.so matches
14 Binary file ./out/target/product/rk3288/symbols/recovery/root/sbin/pcba_core matches
15 ./out/target/product/rk3288/installed-files.txt:343:      142104  /system/lib/libpixelflinger.so
16 Binary file ./out/target/product/rk3288/system/lib/libpixelflinger.so matches
17 Binary file ./out/target/product/rk3288/obj/PACKAGING/systemimage_intermediates/system.img matches
18 Binary file ./out/target/product/rk3288/obj/lib/libpixelflinger.so matches

这个库存放的路径是在 ./system/core/libpixelflinger/

因此我们要先编译这个库之后才可以编译pcba模块。

在android源码的根目录下执行make libpixelflinger_stat

之后进入external/rk-pcba-test/目录,执行mm -B即可编译通过。

posted @ 2017-09-21 10:04  请给我倒杯茶  阅读(863)  评论(0编辑  收藏  举报