平台信息:
内核: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源码的目录下搜索这个库的相关的信息:

 zhuangzb@UYFSanbu02:~/project/E800/rk3288-e810-android6.$ grep "libpixelflinge
Binary file ./.git/index matches
./build/target/product/embedded.mk:: libpixelflinger \
./system/core/libpixelflinger/tests/codegen/Android.mk:: libpixelflinger
./system/core/libpixelflinger/tests/arch-arm64/assembler/Android.mk:: libp
./system/core/libpixelflinger/Android.mk::LOCAL_MODULE:= libpixelflinger
./system/core/libpixelflinger/Android.mk::LOCAL_MODULE:= libpixelflinger_stat
Binary file ./rockdev/Image-rk3288/system.img matches
./external/rk-pcba-test/Android.mk::LOCAL_STATIC_LIBRARIES += libminuitwrp l
./frameworks/native/opengl/libagl/Android.mk::LOCAL_SHARED_LIBRARIES := libcu
Binary file ./out/target/product/rk3288/symbols/data/nativetest/test-pixelfling
Binary file ./out/target/product/rk3288/symbols/data/nativetest/test-opengl-cod
Binary file ./out/target/product/rk3288/symbols/system/lib/libpixelflinger.so matches
Binary file ./out/target/product/rk3288/symbols/recovery/root/sbin/pcba_core matches
./out/target/product/rk3288/installed-files.txt:: /system/lib/libpixelflinger.so
Binary file ./out/target/product/rk3288/system/lib/libpixelflinger.so matches
Binary file ./out/target/product/rk3288/obj/PACKAGING/systemimage_intermediates/system.img matches
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即可编译通过。

rk3288的pcba模块编译调试笔记【学习笔记】的更多相关文章

  1. jz2440使用openjtag+openocd+eclipse调试【学习笔记】

    平台:jz2440 作者:庄泽彬(欢迎转载,请注明作者) 说明:韦东山二期视频学习笔记 交叉编译工具:arm-linux-gcc (GCC) 3.4.5 eclipse版本:eclipse-cpp-l ...

  2. 【MarkMark学习笔记学习笔记】javascript/js 学习笔记

    1.0, 概述.JavaScript是ECMAScript的实现之一 2.0,在HTML中使用JavaScript. 2.1 3.0,基本概念 3.1,ECMAScript中的一切(变量,函数名,操作 ...

  3. Node.js模块、包的学习笔记

    什么是模块 模块是node应用程序的基本组成部分,文件和模块是一一对应的,就是说,一个node文件就是一个模块,这个文件可能是javascript代码.json或者是编译过的c++扩展等,如: var ...

  4. nginx 安装 lua_nginx_module 模块(nginx——lua 学习笔记1)

    插入两个网站: nginx + lua 的OpenResty 开发 跟我学OpenResty(Nginx+Lua)开发目录贴 两个都是 可以根据目录一步步学习的. 1. 版本下载 nginx版本为 n ...

  5. 【10-26】java调试技术学习笔记

    调试工具 jdk自带的工具 jmap jconsole VisualVM jmap jmap -histo:live pid 列出该进程的所有活动实例统计信息 jmap -dump:live,file ...

  6. Android Studio调试方法学习笔记

    (注:本人所用Android Studio的Keymap已设为Eclipse copy) 1.设置断点 只有设置断点,才好定位要调试什么地方,否则找不到要调试的地方,无法调试.(调试过程中也可以增加断 ...

  7. 关于OPC的研究1]c# opc client源码调试和学习笔记

    c# opc client是一个在网上下载的示例程序,调试的时候还是费了一番周折,服务器端程序来自king view6.55,另文介绍. 1.注册dll 程序中有一个名叫OPCDAAuto.dll的文 ...

  8. Stanford公开课《编译原理》学习笔记(1~4课)

    目录 一. 编译的基本流程 二. Lexical Analysis(词法分析阶段) 2.1 Lexical Specification(分词原则) 2.2 Finite Automata (典型分词算 ...

  9. Stanford公开课《编译原理》学习笔记(2)递归下降法

    目录 一. Parse阶段 CFG Recursive Descent(递归下降遍历) 二. 递归下降遍历 2.1 预备知识 2.2 多行语句的处理思路 2.3 简易的文法定义 2.4 文法产生式的代 ...

随机推荐

  1. C#动态验证码

    验证码定义: 就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能 项目中,我们登录注册 ...

  2. buf.readInt32LE函数详解

    offset {Number} 0 noAssert {Boolean} 默认:false 返回:{Number} 从该 Buffer 指定的带有特定尾数格式(readInt32BE() 返回一个较大 ...

  3. PANDAS 数据分析初学者教程

    Pandas 初学者教程       2018-05-19 六尺巷人 对于数据科学家,无论是数据分析还是数据挖掘来说,Pandas是一个非常重要的Python包.它不仅提供了很多方法,使得数据处理非常 ...

  4. (转)基于MVC4+EasyUI的Web开发框架经验总结(13)--DataGrid控件实现自动适应宽带高度

    http://www.cnblogs.com/wuhuacong/p/4085725.html 在默认情况下,EasyUI的DataGrid好像都没有具备自动宽度的适应功能,一般是指定像素宽度的,但是 ...

  5. 【Web缓存机制系列】2 – Web浏览器的缓存机制-(新鲜度 校验值)

    Web缓存的工作原理 所有的缓存都是基于一套规则来帮助他们决定什么时候使用缓存中的副本提供服务(假设有副本可用的情况下,未被销毁回收或者未被删除修改).这些规则有的在协议中有定义(如HTTP协议1.0 ...

  6. js 验证文件格式和大小

    <script> $('#btnSearch').click(function(){ // alert("000");// fileElem = document.ge ...

  7. js 记住我

    $(function(){ $("#btn_login").click(function() { var anv=$("#an").val(); //登录名 v ...

  8. 初识cocos creator的一些问题

    本文的cocos creator版本为v1.9.01.color赋值cc.Label组件并没有颜色相关的属性,但是Node有color的属性. //如果4个参数,在ios下有问题let rgb = [ ...

  9. BZOJ2251 [2010Beijing Wc]外星联络 后缀数组 + Height数组

    Code: #include <bits/stdc++.h> #define setIO(s) freopen(s".in", "r", stdin ...

  10. python写入Excel

    一.dataframe存入Excel中: 注意:openpyxl打开的文件需是xlsx的后缀,因为比较新的. from openpyxl import load_workbook import pan ...