本文转载自:http://blog.csdn.net/kris_fei/article/details/78923784

Platform: RK3399 
OS: Android 7.1 
Board: Firefly-RK3399

需求: 
系统HAL的camera库camera.rk30board.so使用的是32位版本的。 
而单独编译模块(命令是#make camera.rk30board_32 -j8 )出来却只有64位版本,位于 system/lib64/hw下面。

理论上根据Android.mk的规则应该是32和64都会编译的,不过单独编译模块的时候可能只包含了64位版本的处理。如官方的一句话所说:

Android.mk

ifneq ($(strip $(TARGET_2ND_ARCH)), )
LOCAL_MULTILIB := both //表示32和64版本都编译
endif
  • 1
  • 2
  • 3

解决方法

#make camera.rk30board_32 -j8

Build Log:

[ 64% 9/14] target SharedLib: camera.rk30board_32 (out/target/product/rk3399_firefly_edp_box/obj_arm/SHARED_LIBRARIES/camera.rk30board_intermediates/LINKED/camera.rk30board.so)
[ 71% 10/14] target Pack Relocations: camera.rk30board_32 (out/target/product/rk3399_firefly_edp_box/obj_arm/SHARED_LIBRARIES/camera.rk30board_intermediates/PACKED/camera.rk30board.so)
[ 78% 11/14] target Symbolic: camera.rk30board_32 (out/target/product/rk3399_firefly_edp_box/symbols/system/lib/hw/camera.rk30board.so)
[ 85% 12/14] target Strip: camera.rk30board_32 (out/target/product/rk3399_firefly_edp_box/obj_arm/lib/camera.rk30board.so)
[100% 14/14] Install: out/target/product/rk3399_firefly_edp_box/system/lib/hw/camera.rk30board.so
[100% 14/14] build out/target/product/rk3399_firefly_edp_box/obj_arm/lib/camera.rk30board.so.toc
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
 
1

0

[RK3399][Android7.1] 调试笔记 --- 模块编译32位动态库【转】的更多相关文章

  1. MacPorts安装32位动态库

    http://superuser.com/questions/63198/install-32-bits-ports-on-snow-leopard

  2. 9.下载ffmpeg、使QT支持同时编译32位和64位

    1.FFMPEG下载 进入http://ffmpeg.org/download.html,如果下载源码,则在右下方: 如果在linux中,直接输入git clone https://git.ffmpe ...

  3. 【原创】在Windows系统中使用VC9、VC11编译32位、64位PHP及其扩展

    项目中需要使用runkit模块实现AOP,但是团队成员的开发环境都是Windows,而runkit模块官方没有提供Windows环境下的dll扩展,只能自己编译. 下面是编译过程的分类总结.(操作系统 ...

  4. 高级C/C++编译技术之读书笔记(三)之动态库设计

    最近有幸阅读了<高级C/C++编译技术>深受启发,该书深入浅出地讲解了构建过程(编译.链接)中的各种细节,从多个角度展示了程序与库文件或代码的集成方法,提出了面向代码复用和系统集成的软件架 ...

  5. <摘录>如何在64位linux强制编译32位应用程序

    GDC注:因为需要解决在linux64机上编译32位的mongodb(没办法,因为编译的php是32位,然后我想将mongdb扩展添加到php中),在网上搜了很多文章,感觉这篇好懂,而且好用.我使用的 ...

  6. hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档

    相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...

  7. hadoop2.5发布:最新编译 32位、64位安装、源码包、API以及新特性

    hadoop2.5发布:最新编译 32位.64位安装.源码包.API以及新特性 http://www.aboutyun.com/thread-8751-1-1.html (出处: about云开发) ...

  8. 64位ubuntu编译32位程序

      最近在64位ubuntu上开发,需要编译32位程序,需要安装这两个包,然后在编译器参数加上-m32.不放心的话可以用ldd或file查看一下是否生成了对应位数的程序. $ apt-get inst ...

  9. 在64位linux下编译32位程序

    在64位linux下编译32位程序 http://blog.csdn.net/xsckernel/article/details/38045783

随机推荐

  1. bzoj1411: [ZJOI2009]硬币游戏

    1411: [ZJOI2009]硬币游戏 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 965  Solved: 420[Submit][Status ...

  2. Numpy 布尔型数组

    一  给定一个列表,返回大于10的元素. 在python中,有两种方法.一种方法是循环遍历,第二种方法是使用内置函数filter() 在数组中,有更为简单的方法.即布尔型索引 布尔型索引: 将同样大小 ...

  3. 洛谷P2365 任务安排 [解法二 斜率优化]

    解法一:http://www.cnblogs.com/SilverNebula/p/5926253.html 解法二:斜率优化 在解法一中有这样的方程:dp[i]=min(dp[i],dp[j]+(s ...

  4. Java 模板权重随机

    Template templates=...// 所有的模板 final int _weights=1000; // 所有的模板权重 Template _template=null; //随机一个权重 ...

  5. iOS 取应用版本

    
// 应用网址 返回字典中有多种数据 NSString *urlString2 = [NSString stringWithFormat: @"%@", @"http: ...

  6. windows安装SUSE Linux Enterprise Server 12

    一:打开“开发人员模式” 点击开始菜单按钮,选择“设置” 在设置中选择“更新和安全” 在菜单中选择“针对开发人员”,在三个选项中,选中“开发人员模式” 在弹出的警告框中点击“是” 这样开发人员模式就打 ...

  7. Codeforces 665C Simple Strings【暴力,贪心】

    题目链接: http://codeforces.com/contest/665/problem/C 题意: 改变最少的字符,使得最终序列无相同的连续的字符. 分析: 对每一个与前一个字符相同的字符,枚 ...

  8. Loj #6307. 「雅礼国庆 2017 Day1」Clique

    link: https://loj.ac/problem/6307 最大团转补图的独立集,这样的话只有r[x]<l[y]或者r[y]<l[x],x和y才能连边,所以排序之后乱搞就行了. 需 ...

  9. JavaScript中判断变量类型最简洁的实现方法以及自动类型转换(#################################)

    这篇文章主要介绍了JavaScript中判断整字类型最简洁的实现方法,本文给出多个判断整数的方法,最后总结出一个最短.最简洁的实现方法,需要的朋友可以参考下 我们知道JavaScript提供了type ...

  10. iOS开发 浅见runloop

    Runloop是线程相关的的基础框架的一部分.一个 run loop 就是一个事件处理 的循环,用来不停的调度工作以及处理输入事件. 使用Runloop的目的是让线程有任务时去处理,没任务就让它处于休 ...