eabi相关内容
我的问题是关于我在 ARM CORTEX M 启动文件中找到的一些流行但没有详细记录的代码,例如 这个STM32. “模式"是: .size X,.-X ,其中 X 是符号或标签. 我找到了这个答案并了解.size指令和 dot 特殊符号 工作,但仍然完整的行似乎对我没有任何作用..-X 操作的结果不会存储在任何地方. 谁能解释一下这条线的作用? 解决方案 即放在函数
..
我刚刚阅读了 https://www.keil.com/支持/man/docs/armlink/armlink_pge1406301797482.htm.但无法理解 arm 链接器在函数调用之间插入的单板是什么. 在“ARM 体系结构的过程调用标准"中文件,它说, 5.3.1.1 链接器对 IP 的使用 ARM 和 Thumb 状态的 BL 指令都无法寻址完整的 32 位地址空间,因此
..
我越看这个 PDF (应用程序二进制接口ARM 架构:基本标准)我越不理解它的含义.我还想对 ARM 架构的过程调用标准 和 用于 ARM 架构的 ELF. 解决方案 ABI(Application Binary Interface)是定义低级概念之间映射的标准高级语言和特定硬件/操作系统平台机器代码的能力.这包括: C/C++/Fortran/...数据类型在内存中的布局方式(数据
..
我曾经用 arm-none-eabi-gcc/arm-none-eabi-g++ 编译我的微控制器代码,一切正常.我在 Mac 上使用自制的 Cask gcc-arm-embedded.昨天我更新了它,现在当我为 Cortex M4 架构编译(用 M3 编译得很好)时,我在链接阶段为每个目标文件收到这些错误消息: /usr/local/Caskroom/gcc-arm-embedded/6-20
..
我知道过去曾有人问过类似的问题,但经过长时间的处理,我实现了使用重复减法除法正确找到商的算法.但是我无法从这种方法中找出剩余部分.有什么快速简便的方法可以在 32 位处理器上找出 64 位/64 位划分中的余数.更准确地说,我正在尝试实施 ulldiv_t __aeabi_uldivmod(unsigned long long n, unsigned long long d) 在本文档中引用
..
我正在尝试使用 ARM 工具链编译 .so 文件.但是我不断收到此错误 - 错误:源对象具有 EABI 版本 0,但目标具有 EABI 版本 5 我无法更改工具链中的任何内容,因为我必须使用给定的工具链.我以前从未见过这个错误. 我使用了这个编译器标志 - -Wl,--no-warn-mismatch 但不得不把它拿出来,因为它打破了很多其他的东西. 我使用的编译器标志
..
我正在处理一个 Android 项目,我正在使用 NDK 调用本机方法.我有两个库(.so 文件),一个位于 libs/armeabi 文件夹中,另一个位于 libs/armeabi-v7a lib 文件夹中. 如果我尝试运行该应用程序,则它不会加载 /libs/armeabi 文件夹中的库.如果我将库文件移动到 libs/armeabi-v7a 文件夹,那么它会加载库,但在 5 到 10
..
我们在Android开发中需要ARM EABI v7a系统镜像有什么用?该特定图像的目的是什么? 解决方案 如果您使用 NativeDK,如果没有该映像,模拟器将无法模拟 ARMv7 代码的执行(如多核指令和 NEON 浮点)单位)
..
我的问题是关于我在 ARM CORTEX M 启动文件中找到的一些流行但没有很好记录的代码,例如 这个 STM32. “模式"是: .size X,.-X ,其中 X 是符号或标签. 我找到了这个答案并了解如何.size指令和 点特殊符号 工作,但仍然完整的行似乎对我没有任何作用..-X 操作的结果不会存储在任何地方. 有人能解释一下这条线的作用吗? 解决方案 即放在
..
我刚刚阅读了 https://www.keil.com/support/man/docs/armlink/armlink_pge1406301797482.htm.但无法理解 arm 链接器在函数调用之间插入的单板是什么. 在“ARM 架构的过程调用标准"中文件,它说, 5.3.1.1 链接器对 IP 的使用 ARM 状态和 Thumb 状态 BL 指令都无法寻址完整的 32 位地址空
..
我越看这个 PDF (应用程序二进制接口ARM 体系结构:基本标准)我越不明白它的含义.另外我想对 ARM 架构的过程调用标准 和 用于 ARM 架构的 ELF. 解决方案 ABI(Application Binary Interface)是一种标准,定义了低级概念之间的映射高级语言和特定硬件/操作系统平台的机器代码的能力.这包括以下内容: C/C++/Fortran/... 数据类
..
我曾经用arm-none-eabi-gcc/arm-none-eabi-g ++编译我的微控制器代码,并且一切正常.我使用Mac上内置的自制Cask gcc-arm.昨天我更新了它,现在当我针对Cortex M4架构进行编译(使用M3可以正常编译)时,在链接阶段会收到每个目标文件的以下错误消息: /usr/local/Caskroom/gcc-arm-embedded/6-2017-q1-u
..
我知道过去也曾问过类似的问题,但是经过长时间的处理,我实现了使用重复减法除法来正确找到商的算法.但是我无法从这种方法中找出剩余.是否有任何快速简便的方法来找出32位处理器上64位/64位除法中的余数.更准确地说,我正在尝试实现 ulldiv_t __aeabi_uldivmod( unsigned long long n, unsigned long long d) 本文档中引
..
我正在尝试使用ARM工具链来编译.so文件.但是,我不断收到此错误- 错误:源对象的EABI版本为0,而目标的对象为EABI版本5 我不能更改工具链中的任何内容,因为我必须使用给定的工具.我以前从未见过此错误. 我使用了此编译器标志- -Wl,--no-warn-mismatch 但是不得不将其取出,因为它破坏了许多其他东西. 我正在使用的编译器标志是: -fPIC
..
我的问题是关于一些在ARM CORTEX M启动文件(例如“模式"为: .size X,.-X ,其中X是符号或标签. 我找到了有人可以解释这行吗? 解决方案 位于函数X的末尾,函数的大小是函数的末尾与开头之间的差. .是当前位置,所以说.size x是此处与标签x之间的差.
..
默认情况下,GCC使用4字节的wchar_t.我可以将选项-fshort-wchar设置为在L"string constants"中每个wchar_t获得2个字节.但是,当我将编译器选项设置为源文件时,会收到著名的警告消息 foo.o使用2字节wchar_t,但输出将使用4字节wchar_t.在对象之间使用wchar_t值可能会失败 因为我真的想要2字节wchar_t,所以我也希望输出
..
当你建立一个gcc工具有建立它作为臂精灵或臂无 - EABI的可能性,但有什么区别? 我用今天EABI,但那只是因为其他人似乎这样做...但由于这是一个非常糟糕的说法,这将是非常好的理解上的差异。 注意:此工具链将crosscompile基于Cortex-M3的MCU code:就像在STM32 感谢 有些链接 EABI: http://en.wikipedia.org/wiki/
..
我越是看这 PDF 不太了解我这意味着什么。 此外,我想这个人 1 一些意见和 2 我希望有人可以帮助。 解决方案 这是ABI( 应用程序二进制接口 的)是一种标准,定义了低层次的概念之间的映射在高级语言和特定的硬件/ OS平台的机器code的能力。这包括喜欢的东西: 如何C / C ++ / Fortran语言/ ... 数据类型在内存中的布局(数据大小/对齐) 嵌套的函数如
..
我工作的一个Android项目,我现在用的是NDK调用本地方法。 我有两个库(.so文件),一个位于库/ armeabi 文件夹,另一个位于库/ armeabi- V7A lib文件夹。 如果我尝试运行应用程序,它不会加载该库中的 /库/ armeabi 文件夹。如果我将库文件到库/ armeabi-V7A 文件夹,然后将其加载库,但5到10分钟后崩溃,并给出了分段错误。 我在想,如果库(不同
..
为了什么我们需要在Android开发ARM EABI V7A系统的图像? 该特定图像的目的是什么? 解决方案 如果你用NativeDK工作,而不该图像的模拟器无法模拟的ARMv7 code的执行(比如多核指令和NEON浮点-point单位)
..