hi kylin team,

我使用 ubuntu16.04 构建 android 编译环境后编译 android5.1 时出现如下报错。请向开发团队反馈看能否给出解决方案,谢谢!

当我使用 ubuntu16.04 构建 Android 编译环境后, 编译报错. 报错信息如下:

/home/.../proj/.../anroidsrcroot/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/../lib/gcc/x86_64-linux/4.6/../../../../x86_64-linux/bin/ld: error: out/host/linux-x86/obj32/STATIC_LIBRARIES/libcompiler_rt_intermediates/libcompiler_rt.a(eprintf.o): unsupported reloc 43 against global symbol stderr

external/compiler-rt/lib/builtins/eprintf.c:32: error: unsupported reloc 43

collect2: ld returned 1 exit status

host C++: libnativehelper_32 <= libnativehelper/JNIHelp.cpp

make: *** [out/host/linux-x86/obj32/lib/libcompiler_rt.so] Error 1

make: *** 正在等待未完成的任务....

请问如何解决该报错? 我确认编译环境安装 OK, 下面是 ubuntu16.04 上安装工具的版本信息:

root@... :~# sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dri:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev

Reading package lists... Done

Building dependency tree

Reading state information... Done

bison is already the newest version (2:3.0.4.dfsg-1).

build-essential is already the newest version (12.1ubuntu2).

curl is already the newest version (7.47.0-1ubuntu2).

dpkg-dev is already the newest version (1.18.4ubuntu1).

flex is already the newest version (2.6.0-11).

g++-multilib is already the newest version (4:5.3.1-1ubuntu1).

git is already the newest version (1:2.7.4-0ubuntu1).

gnupg is already the newest version (1.4.20-1ubuntu3).

libc6-dev is already the newest version (2.23-0ubuntu3).

libgl1-mesa-dev is already the newest version (11.2.0-1ubuntu2).

libxml2-utils is already the newest version (2.9.3+dfsg1-1).

x11proto-core-dev is already the newest version (7.0.28-2ubuntu1).

xsltproc is already the newest version (1.1.28-2.1).

zip is already the newest version (3.0-11).

libgl1-mesa-dri:i386 is already the newest version (11.2.0-1ubuntu2).

libncurses5-dev:i386 is already the newest version (6.0+20160213-1ubuntu1).

libreadline6-dev:i386 is already the newest version (6.3-8ubuntu2).

libx11-dev:i386 is already the newest version (2:1.6.3-1ubuntu2).

zlib1g-dev:i386 is already the newest version (1:1.2.8.dfsg-2ubuntu4).

gperf is already the newest version (3.0.4-2).

python-markdown is already the newest version (2.6.6-1).

tofrodos is already the newest version (1.7.13+ds-2ubuntu1).

mingw32 is already the newest version (4.2.1.dfsg-2ubuntu1).

0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

宿主机环境 binutils 版本信息:

root@...:~# apt-get install binutils

Reading package lists... Done

Building dependency tree

Reading state information... Done

binutils is already the newest version (2.26-8ubuntu2).

0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

root@...:~# objdump -v

GNU objdump (GNU Binutils for Ubuntu) 2.26

Copyright (C) 2015 Free Software Foundation, Inc.

This program is free software; you may redistribute it under the terms of

the GNU General Public License version 3 or (at your option) any later version.

This program has absolutely no warranty.

宿主机环境 gcc 版本信息:

root@...:~# gcc --version

gcc (Ubuntu 5.3.1-14ubuntu2) 5.3.1 20160413

Copyright (C) 2015 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

从报错信息来看,是在链接 host 程序时出错。链接 host 程序时用的工具链是放在 codebase 中的,即 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/../lib/gcc/x86_64-linux/4.6/../../../../x86_64-linux/bin/ld.

1. 搞不明白,既然工具链在 codebase 中,也就不应该依赖宿主机 gcc 和 binutils, 就算我宿主机 gcc 和 binutils 版本较高,也不应该报此错误?

2. 请问如何解决此错误?降级宿主机 binutils 版本吗?

3. 在 ubuntu16.04 上编译贵司代码时,我还曾遇见另一个错误由 make 报出,即 ***recipe commence before first target, 查看 make 版本是 4.1, 后来重新覆盖安装 make 3.81 解决。

长期来看编译环境迁移到 ubuntu16.04 LTS 是必然的事情,因此非常期待贵司的解答,谢谢!

16.04编译android 7.0,ubuntu16.04 编译Android5.1报错相关推荐

  1. linux编译android源码,ubuntu16.04 Android源码下载编译

    本次编译源码的电脑为Ubuntu 16.04,4核 + 4G内存. 注. 对于电脑配置低的建议不要编译7.0以上的版本,就像我这台电脑,基本编译7.0以上都会报内存不足问题,因为在7.0版以上andr ...

  2. [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程

    1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6.0的源码编译出来了,各种配置,各种error,各种爬坑,特写此博客记录爬坑经历.先上图,Ubuntu上编译完后成功运行模拟 ...

  3. Ubuntu 16.04 编译Android 6.0系统源码

    准备环境 1.安装open-jdk7 [使用open-jdk8会报错],原因是: 在build/core/main.mk中默认指定的是jdk1.7 # Check for the correct ve ...

  4. 深度学习(四十一)cuda8.0+ubuntu16.04+theano、caffe、tensorflow环境搭建

    cuda8.0+ubuntu16.04+theano.caffe.tensorflow环境搭建 目前自己撘过深度学习各种库.各种环境,已经搭建了n多台电脑,发现每台电脑配置安装方法各不相同,总会出现各 ...

  5. VM15.5.0+Ubuntu16.04.6+ns2.35仿真平台

    VM15.5.0+Ubuntu16.04.6+ns2.35仿真平台 步骤一.安装虚拟机:VMware® Workstation 15 Pro(版本15.5.0) (1)下载虚拟机应用程序 (2)双击运 ...

  6. Kubernetes 1.15.0 ubuntu16.04 高可用安装步骤

    1. 服务器说明 使用的是3台ubuntu16.04的虚拟机,具体信息如下: 172.16.100.238 master 172.16.100.239 master1 172.16.100.240 m ...

  7. 全志 H6 Orange Pi Lite 2 Android 7.0 源码编译

    编译环境 Ubuntu-18.04.1 16GB RAM 下载源码 目前所用的源码版本为H6-2018-1-2,大家可以到香橙派官网下载,顺便记录下这个源码编译所遇到的一些坑. 下载源码所得的目录 l ...

  8. 团队环境搭建:MTK平台,Android 9.0内销TV编译服务器配置

    团队环境搭建:MTK平台,Android 9.0内销TV编译环境配置 文章目录 团队环境搭建:MTK平台,Android 9.0内销TV编译环境配置 一.前言 二.硬件环境要求 四 .替国内换源:so ...

  9. Android 8.0 odex预编译与空间占用相关设置探究

    目录 Android 8.0 odex预编译与空间占用相关设置探究 1.引言 2.odex全局设置 3.APK设置 Android 8.0 odex预编译与空间占用相关设置探究 1.引言 所谓Odex ...

最新文章

  1. 动画狗奔跑gif图片_常用的GIF制作工具,自媒体人常用,你还不会做表情包
  2. webstorm 两个文件对比不同_DOS 入门到精通 使用 fc 命令比较两个文件,并逐一显示不同之处...
  3. JPA通用Dao类设计
  4. layui响应式:隐藏与显示(class 类名后缀)
  5. 拼多多股价创历史新高:市值再度逼近京东
  6. 在 Delphi 下使用 DirectSound (1): 枚举播放设备
  7. java list下标_Java list删除指定多个下标数据
  8. 计算机应用基础演示文稿内容,计算机应用基础(PowerPoint 2003电子演示文稿系统)...
  9. 吉林大学嵌入式原理课程课堂作业
  10. vs code里面的less插件一直报错_ipad4现在怎么登微信?一直显示微信版本过低怎么办...
  11. 现在公司都不缺人了?软件测试工作经历3年,面试居然被坑了....
  12. zen cart产品页面伪静态后-c-.html,zencart .htaccess伪静态文件规则
  13. 抖音自媒体火爆短视频如何造?
  14. 字节跳动/今日头条校招大礼包 2019年校招大礼包
  15. Java - 关于HashMap通过keySet遍历kv的二次调用问题
  16. 逻辑回归——乳腺癌分类
  17. CSDN校园活动社开展“开学季活动”
  18. sklearn逻辑回归为什么要归一化
  19. 详谈大学生如何确定自己的职业规划
  20. MTK5G芯片大全-MTK5G芯片资料合集-5G芯片资料下载

热门文章

  1. Neo4j:绘制“我的名字是……我在工作”图
  2. Apache Camel 2.18发布–包含内容
  3. 避免在ConcurrentHashMap.computeIfAbsent()中进行递归
  4. Java 8 Lambda表达式的函数式编程– Monads
  5. 基于注释的Spring MVC Web应用程序入门
  6. 设置MongoDB副本集分为4个步骤
  7. 使用NetBeans Lambda支持在Java 8中使用Lambda表达式对列表进行排序
  8. 使用Spring Security对RESTful服务进行身份验证
  9. Spring:设置日志依赖项
  10. 测试RESTful服务的客户端