平台信息:
内核: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. Android Fragment与Activity交互的几种方式

    这里我不再详细介绍那写比较常规的方式,例如静态变量,静态方法,持久化,application全局变量,收发广播等等. 首先我们来介绍使用Handler来实现Fragment与Activity 的交互. ...

  2. WM消息大全

    消息名 消息值 说明 WM_CREATE 0x0001 应用程序创建一个窗口 WM_DESTROY 0x0002 一个窗口被销毁 WM_MOVE 0x0003 移动一个窗口 WM_SIZE 0x000 ...

  3. more-less-cat-tail-head 命令简单分析

    区别:cat一次性把文件内容全部显示出来,管你看不看得清,显示完了cat命令就返回了,不能进行交互式 操作,适合察看内容短小.不超过一屏的文件:more比cat强大一点,支持分页显示,你可以ctrl+ ...

  4. Newtonsoft.Json 处理日期格式

    Newtonsoft.Json.Converters.IsoDateTimeConverter iso = new Newtonsoft.Json.Converters.IsoDateTimeConv ...

  5. POJ_1061_扩展欧几里德

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 107027   Accepted: 21321 Descript ...

  6. Markdown 常用语法总结

    注意:Markdown使用#.+.*等符号来标记,符号后面必须跟上至少跟上 1个空格才有效! Markdown的常用语法 标题 Markdown标题支持两种形式. 1.用#标记 在标题开头加上1~6个 ...

  7. null值处理

    一,在实体类的上面加注解 import com.fasterxml.jackson.annotation.JsonInclude @JsonInclude(JsonInclude.Include.NO ...

  8. 切换原生appium里面H5页面

    #coding = utf-8from appium import webdriverimport time'''1.手机类型2.版本3.手机的唯一标识 deviceName4.app 包名appPa ...

  9. 深度遍历DFS---树

    一.二叉树的深度 题目: 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,nul ...

  10. 【剑指Offer】46、圆圈中最后剩下的数

      题目描述:   每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈.然后 ...