平台信息:
内核: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#利用ICSharpCode将远程文件打包并下载

    应用于ASP.NET MVC中 方法主体代码: public void GetFilesByOrder(string Order_ID, string IntNumber) { MemoryStrea ...

  2. EntityFramewok 插入Mysql数据库 中文产生乱码解决

    首先Mysql表,建表的时候,有没有选择UTF8,如果是默认的编码latin1,就会产生乱码 这里修改后,还是乱码,那就要检查发生乱码的列是不是UTF8格式 然后修改App.Config或者Web.C ...

  3. python--3、函数

    定义: 定义函数时,也相当于定义变量.会把函数体内的代码存入开辟的内存空间中.使用函数时,通过func() 声明是函数,其对应的值为代码.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执 ...

  4. 【SQL】IN、EXISTS和表连接三者的效率比较

    一. IN和EXISTS比较 在许多基于基础表的查询中,为了满足一个条件,往往需要对另一个表进行查询.此时就会用到IN和EXISTS. 例如:查询departments表中存在的部门的人数. 1. 使 ...

  5. 用js制作一个计算器

    使用js制作计算器 <!doctype html> <html lang="en"> <head> <meta charset=" ...

  6. PS通道的界面颜色设置

    编辑--首选项---界面--界面---选项---(勾选)以彩色显示通道(彩色显示)或者不勾选(为黑白色显示)

  7. BZOJ 4817: [Sdoi2017]树点涂色 LCT+Access的性质+DFS序+线段树

    Code: #include<bits/stdc++.h> #define maxn 200003 #define inf -1000000 using namespace std; vo ...

  8. 【转载】push to origin/master was rejected错误解决方案

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/a137151062/article/details/78820806idea中,发布项目到OSChi ...

  9. EurekaLog是什么鬼?

    D的all工程文件打开后,莫名其妙就处于等待打开状态.因为最后一次调整是安装了RO9.0.所以一直怀疑是RO的原因.再加上win7授权问题,安装RO一直不顺当.所以折腾的时间最多. 其他把RO全部卸载 ...

  10. FreeMarker基本使用

    FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 l         FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 ...