arm-linux-androideabi 和 arm-linux-gnueabi

2023-10-26

编译环境:ubuntu18.04

软件版本:全志SDK,安卓版本8.1.0,linux-4.9.0


问题描述:

在全志的安卓系统中,需要运行C项目代码,在查找交叉编译工具时,shell里直接arm- tab出来的是arm-linux-androideabi 

尝试用arm-linux-androideabi 编译了C 的源码,发现报错无法编译


问题分析:

搜索了下这个问题:

编译可能意味着不仅仅是将源代码转换为二进制代码。 像GCC这样的编译器也提供了某些库,在这种情况下, libgcc用于处理硬件无法处理的内容。 当编译器成为工具链时,它还提供由编程语言标准化的运行时库,类似于目标系统中提供的编程语言。 在arm-linux-gnueabi-的情况下,可能是libcarm-linux-androideabi-这是仿生的 。

您可以生成供不同编译器使用的兼容对象文件,这就是精灵的用途。

您可以生成可以大小的静态可执行文件,它们应该适用于任何匹配的硬件/内核,因为在这种情况下工具链的目标就是这样。

但是,如果您生成动态可执行文件,那些只能在支持其依赖项的系统上运行。 因此,一个简单的“hello world”应用程序不是arm-linux-gnueabi-静态构建将无法在Android系统上运行,因为它提供了仿生而不是libc。


解决方法:

查了资料,C项目需要libc和运行时库支持,所以编译C项目不能用arm-linux-androideabi 

在全志的SDK中查找arm-linux-gnueabi

bell@r311:~/r311/lichee/tools/build/toolchain/gcc-linaro-arm-linux-gnueabihf-4.9-2014.08_linux/bin$ ls
arm-linux-gnueabihf-addr2line     arm-linux-gnueabihf-dwp        arm-linux-gnueabihf-gcc-ranlib  arm-linux-gnueabihf-ld.gold          arm-linux-gnueabihf-ranlib
arm-linux-gnueabihf-ar            arm-linux-gnueabihf-elfedit    arm-linux-gnueabihf-gcov        arm-linux-gnueabihf-ldd              arm-linux-gnueabihf-readelf
arm-linux-gnueabihf-as            arm-linux-gnueabihf-g++        arm-linux-gnueabihf-gdb         arm-linux-gnueabihf-nm               arm-linux-gnueabihf-size
arm-linux-gnueabihf-c++           arm-linux-gnueabihf-gcc        arm-linux-gnueabihf-gfortran    arm-linux-gnueabihf-objcopy          arm-linux-gnueabihf-strings
arm-linux-gnueabihf-c++filt       arm-linux-gnueabihf-gcc-4.9.2  arm-linux-gnueabihf-gprof       arm-linux-gnueabihf-objdump          arm-linux-gnueabihf-strip
arm-linux-gnueabihf-cpp           arm-linux-gnueabihf-gcc-ar     arm-linux-gnueabihf-ld          arm-linux-gnueabihf-pkg-config
arm-linux-gnueabihf-ct-ng.config  arm-linux-gnueabihf-gcc-nm     arm-linux-gnueabihf-ld.bfd      arm-linux-gnueabihf-pkg-config-real

在makefile里修改编译工具为arm-linux-gnueabi即可!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

arm-linux-androideabi 和 arm-linux-gnueabi 的相关文章

  • 可以制作一个不调用Intent的Android通知吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 我可以使用 Android Account Manager 获取 App Engine 的 OAuth 访问令牌吗?

    我的 AppEngine 服务器有 Android 客户端 两者都使用 Google 帐户 我想使用 AccountManager 来获取访问令牌对于 OAuth 到目前为止我正在使用 ClientLogin 但我想切换到 OAuth 在
  • 启动应用程序时出现 NullPointerException

    我厌倦了启动我的 Activity 在 AndroidManifest 中声明 但后来我看到了错误 08 11 16 04 05 952 E AndroidRuntime 815 FATAL EXCEPTION main 08 11 16
  • React Native - 在 Android 中显示传入视频通话屏幕(VOIP 应用程序)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试实施视频通话React Native 应用程序中的功能 我用过React 原生 twilio 视频 webrtc https
  • 删除损坏的链接 Unix

    我想删除损坏的链接 但在此之前我想确认目录中是否存在链接文件 我们来调用一下链接A if a A then print ya A is ther fi But if A链接已损坏 那么我该如何检查 find L type l找到损坏的符号链
  • 获取 gradle 构建的 aapt2 参数?

    我有兴趣尝试使用 aapt2 从命令行编译 Android 应用程序 当我尝试执行以下操作时 链接约束布局库时遇到问题aapt2 link命令 该程序从 Android studio gradle 成功构建 如何使 gradle 命令行调用
  • 如何更改 Android 设备上的 MAC 地址? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 有没有一种简单的方法可以手动更改 A
  • support-library-v7 上的 ClassCastException,使用版本 21

    背景 在过去的两周里 我一直将我的应用程序从 ActionBarSherlock 转移到 Google 的官方支持库 以获得 Material Design 风格 我已经更新到最新版本 21 并且包含了 v4 和 v7 My app htt
  • ActionBar 上的自定义主页按钮

    我正在使用 ActionBar Sherlock 库 所以 要更改默认的主页按钮 我这样做了 这不起作用 所以 我也添加了这个
  • 如何保留操作/标题栏但隐藏通知栏

    如何保留操作 标题栏但隐藏通知栏 这个问题看起来已经得到了回答 但我发现的大多数答案都隐藏了操作栏和通知栏 我希望能够保留操作 标题栏 我得到的最好的方法是隐藏两者并使用线性布局来显示自定义操作 标题栏 但我想要一个系统生成的 另外 是否可
  • 如何对 Android 画布上的剪辑边界进行抗锯齿处理?

    我用的是安卓系统android graphics Canvas http developer android com reference android graphics Canvas html class 画一个戒指 http code
  • Android 6.0如何隐藏导航栏?

    我有以下代码 getWindow getDecorView setSystemUiVisibility View SYSTEM UI FLAG LAYOUT STABLE View SYSTEM UI FLAG LAYOUT HIDE NA
  • 如何在命名管道 (mkfifo) 上执行非阻塞 fopen?

    如果我有一个程序使用 mkfifo 创建并尝试打开命名管道 如何在不阻塞的情况下打开管道进行读取或写入 具体来说 我正在编写一个 C 程序 它可以在有或没有 GUI 的情况下运行 用 Java 编写 在 C 程序中 我使用 mkfifo 成
  • Android 模拟器出现错误:冷启动:快照不存在

    我在使用 Android 模拟器 7 8 天后就遇到了问题 起初它根本没有运行 现在重新安装模拟器解决了这个问题 但又产生了新的问题 每当我运行模拟器时 都会花费很长时间 大约 5 6 分钟 然后显示错误 Cold Boot Snapsho
  • 将目录从 Assets 复制到本地目录

    我正在尝试使用资产文件夹中的目录并将其作为File 是否可以访问 Assets 目录中的某些内容File 如果没有 如何将 Assets 文件夹中的目录复制到应用程序的本地目录 我会像这样复制一个文件 try InputStream str
  • Alsa:如何在 2 个输出上复制流并保存系统配置?

    我的声卡是 Audigy SE SB0570 我想不仅在扬声器上而且在耳机上同时播放相同的立体声流 我在空的 asoundrc 上尝试这个配置 pcm quad type multi slaves a pcm hw 0 0 green ho
  • 在自定义 BaseAdapter 子类中使用 Butter Knife 会导致“无法注入视图”错误

    我正在尝试使用 Butter Knife 来简化自定义 BaseAdapter 类的创建 我正在遵循这里的示例 http jakewharton github io butterknife http jakewharton github i
  • 无法查看数据选择器上的当前数据

    我创建了一个自定义数据选择器 其中显示 1950 年至 2016 年的年份 现在 当我第一次打开选择器时 我想设置当天的当前数据 但我无法将其设置为当前数据 第一次启动后 它的工作原理与我希望的完全一样 这是我迄今为止尝试过的代码 priv
  • 如何在android中实现表面视图的双击

    请告诉我如何实现双击SurfaceView在 Android 中使用手势检测器 有人可以提供代码示例吗 你可以尝试以下 实际上我测试了这个并且效果很好 1 Extend GestureDetector SimpleOnGestureList
  • public open fun navigateUp() 的参数太多

    我在 Kotlin 中创建了一个新的 Android 项目 我还使用向导创建了一个新的导航抽屉活动 一如既往 没有任何东西是开箱即用的 以下行显示编译错误 val navController findNavController R id n

随机推荐

  • 电机PID调试

    电机PID调试 电机PID调试 一 直流电机原理与TB6612 1 1 电机原理 1 2 减速器作用 1 3 电机实物接线图 1 4 电机控制芯片 二 编码器使用以及测速原理 2 1 编码器原理 2 1 编码器接线 2 1 编码器软件四倍
  • Matlab——m_map指南(2)

    3 海岸线和深度测量 3 1 1 海岸线选项 m coast line optional line arguments m coast line optional line arguments m map 的海岸线数据可以使用m coast
  • 锦囊2—修改已经存在了的ES数据结构

    修改已经存在了的ES数据结构 问题背景 由于ElasticSearch没有像mysql一样可以直接字段数据类型的方法 因此需要通过创建中间索引 data index 1 备份数据到中间索引 data index 1 然后删除原索引 data
  • 华为OD题目: 快速开租建站

    华为OD题目 快速开租建站 知识点 BFSQ搜索拓扑排序 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 当前IT部门支撑了子公司颗粒化业务 该部门需要实现为子公司快速开租建站的能力 建站是指在一个全新的环境部署一套IT服务
  • An orientation marker must be set prior to enabling/disabling widget

    Set up the QVTK window viewer reset new pcl visualization PCLVisualizer viewer false viewer gt addCoordinateSystem 1000
  • 梦幻模拟战更新服务器正在维护,梦幻模拟战1月24日更新公告 新活动揭示的哲学开放[多图]...

    梦幻模拟战在1月24日对游戏进行了更新 开放了最新的活动揭示的哲学 并有丰厚的奖励等着玩家们获取 接下来安族小编就带大家来看看具体更新公告 服务器将在1月24日6 00进行更新维护 预计维护时长约90分钟 维护期间指挥官无法登陆服务器 给您
  • 【华为OD统一考试B卷

    文章目录 题目描述 输入描述 输出描述 用例 C java javascript python 题目描述 对一个数据a进行分类 分类方法为 此数据a 四个字节大小 的四个字节相加对一个给定的值b 取模 如果得到的结果小于一个给定的值c 则数
  • HDOJ 1827 - Summer Holiday 简单的tarjan求强联通分量+缩点

    题意 听说lcy帮大家预定了新马泰7日游 Wiskey真是高兴的夜不能寐啊 他想着得快点把这消息告诉大家 虽然他手上有所有人的联系方式 但是一个一个联系过去实在太耗时间和电话费了 他知道其他人也有一些别人的联系方式 这样他可以通知其他人 再
  • MMOCR之DBNET文字检测

    MMCV系列之MMOCR 注 大家觉得博客好的话 别忘了点赞收藏呀 本人每周都会更新关于人工智能和大数据相关的内容 内容多为原创 Python Java Scala SQL 代码 CV NLP 推荐系统等 Spark Flink Kafka
  • R语言入门(安装使用基础操作详细说明)合集

    R使用基础知识 Rstudio使用 R包管理 操作数据 空间数据处理 在jupyternotebook中使用R语言 参考博客 Rstudio使用 ctrl enter运行当前行代码 help中查找说明文档 查看前后绘图图片 工作目录设定及管
  • Android音视频任务列表之(一)——在 Android 平台绘制一张图片,使用至少 3 种不同的 API,ImageView,SurfaceView,自定义 View

    一 使用ImageView绘制图片 1 在布局文件中添加ImageView控件
  • 云原生环境 - Dockerfile挂载nfs盘【真实案例】

    文章目录 背景 解决 第1步 搭建NFS Server 第2步 调整Dockerfile 安装nfs utils 第3步 设置privileged权限 参考 背景 项目中使用RainBond 基于Kubernetes的云原生平台 部署相关微
  • 干货

    作者 李家丞 同济大学数学系本科在读 现格灵深瞳算法部实习生 近年来 深度学习模型逐渐取代传统机器视觉方法而成为目标检测领域的主流算法 本系列文章将回顾早期的经典工作 并对较新的趋势做一个全景式的介绍 帮助读者对这一领域建立基本的认识 营长
  • 数据库知识点总结(一)

    第一章 绪论 重点 掌握关系数据模型的相关概念 数据库系统三级模式和两层映像的体系结构 数据库系统的逻辑独立性和物理独立性等 难点 本章的难点是需要掌握数据库领域大量的基本概念 此 外 数据模型及数据库系统的体系结构也是本章的难点 1 1
  • 三个C语言中字符转换的函数

    wcstombs 将宽字符转换成多字符 mbstowcs 把多字符转换成宽字符 Setlocale 本函数用来配置地域的信息 设置当前程序使用的本地化信息 使中文路径生效的函数
  • 【RuoYi-Vue-Plus】学习笔记 08 - Mybatis Plus 分页插件实现分页功能

    文章目录 前言 参考目录 代码分析 1 分页构建使用 1 1 构建分页参数 2 分页插件 paginationInnerInterceptor 2 1 分页溢出处理 overflow 2 2 单页条数限制 maxLimit 前言 前段时间框
  • 阿里资深架构师答疑:数据湖概相关念、特征、架构与案例

    写在前面 最近 数据湖的概念非常热 许多前线的同学都在讨论数据湖应该怎么建 阿里云有没有成熟的数据湖解决方案 阿里云的数据湖解决方案到底有没有实际落地的案例 怎么理解数据湖 数据湖和大数据平台有什么不同 头部的云计算玩家都各自推出了什么样的
  • 华为OD机试 - 乱序整数序列两数之和绝对值最小(Java)

    题目描述 给定一个随机的整数 可能存在正整数和负整数 数组 nums 请你在该数组中找出两个数 其和的绝对值 nums x nums y 为最小值 并返回这个两个数 按从小到大返回 以及绝对值 每种输入只会对应一个答案 但是 数组中同一个元
  • 1.16 I/O文件的读、写操作(open方式打开文件)

    存在一个hello txt文件 内容如下截图 打开文件的语句是 file open file name access mode file name代表文件名 文件的全路径 access mode代表打开文件的模式 文件各个模式如下 一 文件
  • arm-linux-androideabi 和 arm-linux-gnueabi

    编译环境 ubuntu18 04 软件版本 全志SDK 安卓版本8 1 0 linux 4 9 0 问题描述 在全志的安卓系统中 需要运行C项目代码 在查找交叉编译工具时 shell里直接arm tab出来的是arm linux andro