首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

第一个gcc交叉编译阶段出错(arm-none-eabi/bin/as:无法识别的选项'--64')

gcc交叉编译是指在一台主机上使用gcc工具链来编译针对另一种体系结构的目标代码。在这个问题中,出现了一个错误,错误信息是"arm-none-eabi/bin/as:无法识别的选项'--64'"。这个错误通常表示在交叉编译阶段使用了一个无法识别的选项'--64'。

解决这个问题的方法是检查交叉编译的命令行参数,确保没有使用错误的选项。在这种情况下,'--64'选项可能是一个错误的选项,可能是由于版本不兼容或错误的命令行参数导致的。

为了更好地解决这个问题,可以参考以下步骤:

  1. 确认交叉编译的目标体系结构是正确的。在这个问题中,目标体系结构是arm-none-eabi。确保选择了正确的目标体系结构,并且使用了相应的工具链。
  2. 检查交叉编译命令行中的选项。确保没有使用错误的选项,特别是'--64'选项。可以查阅相关文档或使用帮助命令来了解正确的选项。
  3. 确认使用的gcc工具链版本与目标体系结构兼容。某些版本的gcc工具链可能不支持特定的选项或目标体系结构。确保使用的gcc工具链版本与目标体系结构兼容。
  4. 如果问题仍然存在,可以尝试更新或重新安装gcc工具链。有时候,问题可能是由于损坏的工具链或不完整的安装导致的。更新或重新安装gcc工具链可能会解决这个问题。

总结起来,解决这个问题的关键是检查交叉编译命令行参数,确保没有使用错误的选项,并确保使用的gcc工具链版本与目标体系结构兼容。如果问题仍然存在,可以尝试更新或重新安装gcc工具链。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • arm-gcc各版本区别

    这就需要用到交叉编译。arm-linux-gcc是什么意思?就是告诉你的编译器,我编写的环境是linux,但是我希望生成的可执行程序是在arm上面跑的。这就是交叉编译。...armcc ARM 公司推出的编译工具,功能和 arm-none-eabi 类似,可以编译裸机程序(u-boot、kernel),但是不能编译 Linux 应用程序。...== arm-linux-gnueabi-gcc 和 arm-linux-gnueabihf-gcc 两个交叉编译器分别适用于 armel 和 armhf 两个不同的架构,armel 和 armhf 这两种架构在对待浮点运算采取了不同的策略...其实这两个交叉编译器只不过是 gcc选项 -mfloat-abi 的默认值不同。...成功输出 小结: 1).在编译过程中,除非使用了 -E, -S, -c选项,或者编译出错,不然最后步骤都是链接 ?

    3.4K20

    交叉编译学习笔记(二)——交叉编译器的命名规则

    交叉编译学习笔记(二)——交叉编译器的命名规则 在进行嵌入式开发过程中,用到的交叉编译器经常是这样的名称: arm-linux-gcc arm-none-linux-gnueabi-gcc arm-linux-gnu-gcc...如: arm-none-eabi:该编译器没有操作系统,不能支持那些与操作系统关系密切的函数(如fork(2)) arm-none-linux-eabi:该编译器用于Linux系统 1. arch arch...4. armcc ARM 公司推出的编译工具,功能和 arm-none-eabi 类似,可以编译裸机程序(u-boot, kernel),但是不能编译 Linux 应用程序。...其实这两个交叉编译器只是在 gcc选项 -mfloat-abi 的默认值不同。...\n”); return 0; } 使用“-v”选项以获取更详细的信息: (1) 使用 arm-linux-gnueabihf-gcc 编译 输入指令如下:

    4.5K50

    Qt-4.7.2移植过程

    参考链接: C++ feholdexcept() 主机:红帽5.0  arm-linux-gcc:4.5.1  1.下载Qt源码并解压  我下载的为:qt-everywhere-opensource-src...qt-everywhere-opensource-src-4.7.2  qte cd qte  2.设置安装环境变量,编写install.sh  vim install.sh  export PATH=/usr/local/arm/4.5.1/bin.../include/c++/4.5.1:/usr/local/arm/4.5.1/arm-none-eabi/include/c++/4.5.1/arm-none-eabi:$CPLUS_INCLUDE_PATH.../qteconfig.log   source arm_build.sh   便开始进行配置了,其中我删除了有关tslib选项,有需要的要加上  接着会出错:  /root/built_qt/qte/src.../qtemake.log  便是长时间的编译了......等待    还以为中间会有出错的,但是很给力,一直到结束都没错。好了,一切就绪,接下来就开始做界面了!

    82830

    如何在实时操作系统(RTOS)中使用GCC的栈溢出保护(SSP)功能

    三、开启GCC栈溢出保护 在编译选项中增加-fstack-protector-all、-fstack-protector-strong、-fstack-protector中的任何一个即可开启GCC的栈溢出保护...但是,并非所有的编译器能提供完整的支持,比如arm-none-eabi就会报下面的错误: arm-none-eabi/bin/ld: cannot find -lssp_nonshared arm-none-eabi.../bin/ld: cannot find -lssp 看起来是少了一些库。...可以先通过下面的命令生成空的静态库,然后在gcc的链接选项(一般定义为LDFLAGS)中通过-L添加指向libssp.a和libssp_nonshared.a所在的目录。...; } 如果SSP已生效,函数__stack_chk_fail会被调用,否则SSP未生效,这时可以尝试禁用编译器的优化选项

    3.3K31

    android设备上如何运行C语言原生程序

    , 这个时候我们就要使用交叉编译工具, 那这种编译的模式就不叫本机编译了,而叫做交叉编译 为什么需要交叉编译 原因: 你正在编译一款linux应用,但你手上只有一台windows电脑,这个时候交叉编译能帮上大忙...目标设备环境不允许,比如单片机, 内存和性能无法支持程序的编译 交叉编译工具 交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi] arch – 体系架构,如...可分为支持和不支持操作系统,如 arm-none-eabi:这个是没有操作系统的,适用于ARM架构裸机,工具链提供商未知,嵌入式应用二进制接口,这个工具不支持那些跟操作系统关系密切的函数,比如fork(...,实现在windows平台上编译出能够在ARM+Linux平台上的可执行程序 这里我们使用 arm-none-linux-gnueabi-gcc 这款交叉编译工具 工具下载: 各个平台arm-none-linux-gnueabi...\n"); return 0; } 第二步 源码编译 在命令窗口执行bin包下的arm-none-linux-gnueabi-gcc指令 arm-none-linux-gnueabi-gcc

    5.3K20

    xmake从入门到精通9:交叉编译详解

    通常的交叉编译工具链都是基于gcc/clang的,大都具有类似如下的结构: /home/toolchains_sdkdir - bin - arm-linux-armeabi-gcc...手动配置编译 如果上面的自动检测对某些工具链,还无法完全通过编译,就需要用户自己手动设置一些交叉编译相关的配置参数,来调整适应这些特殊的工具链了,下面我会逐一讲解如何配置。...设置工具链bin目录 对于不规则工具链目录结构,靠单纯地--sdk选项设置,没法完全检测通过的情况下,可以通过这个选项继续附加设置工具链的bin目录位置。...例如,toolchains的bin目录下同时存在两个不同的编译器: /opt/bin - armv7-linux-gcc - aarch64-linux-gcc 我们现在想要选用armv7的版本...如果指定的编译器名不是那些xmake内置可识别的名字(带有gcc, clang等字样),那么编译器工具检测就会失败。

    1.7K30

    在 CLion 中创建基于 CubeMX 的 STM32 工程

    事先准备 除了要装好 STM32CubeMX 之外还需要: 安装 mingw 编译环境; 安装 openocd 用于调试; 安装嵌入式 GNU 工具链 arm-none-eabi-gcc 等。...二、mingw64 的安装 与 OpenOCD 一样,mingw64 也是解压就能用的,安装方法与 OpenOCD 相同。 ?...完成后重新打开(关闭后再打开)Windows PowerShell 通过 gcc -v 测试配置正确可用。 ?...arm-none-eabi 系列是个 Window 的 *.exe 安装文件,Sugar 就是双击安装在默认位置的。 装好后要手动将 bin 的路径加入环境变量,如下: ?...然后重新打开(关闭后再打开)Windows PowerShell 通过 arm-none-eabi-gcc -v 命令测试配置正确可用。 ? 安装 CLion 1、手动勾选如下选项 ?

    3.4K20

    【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践

    复制  这里有个优雅的点:如果没有指定-a选项,则默认使用x86_64架构,方便与已有编译脚本的融合和兼容。如果传入的架构参数不支持,脚本会输出错误信息并退出。...-386.exe main.go 复制 这个命令会分别编译出Linux和Windows操作系统中的x86和x64架构的程序 2.2 使用交叉编译工具 使用交叉编译工具。...安装交叉编译工具 首先,我们需要安装交叉编译工具。...在Ubuntu系统中,我们可以使用以下命令来安装交叉编译工具: sudo apt-get install gcc-arm-linux-gnueabihf sudo apt-get install gcc-mingw-w64...-o myprogram-windows.exe main.go 复制  这个命令会使用x86_64-w64-mingw32-gcc交叉编译工具来编译Windows x64架构的程序,并使用CGO LDFLAGS

    1.5K60

    【保姆级教程】Docker服务在双架构(X86和ARM)编译统一实践

    这里有个优雅的点:如果没有指定-a选项,则默认使用x86_64架构,方便与已有编译脚本的融合和兼容。如果传入的架构参数不支持,脚本会输出错误信息并退出。...-386.exe main.go这个命令会分别编译出Linux和Windows操作系统中的x86和x64架构的程序2.2 使用交叉编译工具使用交叉编译工具。...安装交叉编译工具首先,我们需要安装交叉编译工具。...在Ubuntu系统中,我们可以使用以下命令来安装交叉编译工具:sudo apt-get install gcc-arm-linux-gnueabihfsudo apt-get install gcc-mingw-w64...-o myprogram-windows.exe main.go 这个命令会使用x86_64-w64-mingw32-gcc交叉编译工具来编译Windows x64架构的程序,并使用CGO LDFLAGS

    6.5K51

    【FFmpeg】编译不同平台的 FFmpeg 源码 ( 本地编译交叉编译 | FFmpeg 指定目标平台的编译配置参数 | 配置目标 CPU 架构 | 配置目标操作系统 )

    架构 , arm64 架构 ; " 本地编译 " 的 编译器 和 编译工具链 与 本地系统的 体系结构 和 操作系统相匹配 , 编译过程简单直接 , 无须配置交叉编译相关选项 , 编译出来的 可执行文件...和 函数库 ; 在 MacOS 中编译 MacOS 中使用的 可执行文件 和 函数库 ; 注意 : Android 和 iOS 必须使用交叉编译 , 无法进行本地编译 ; 2、交叉编译 " 交叉编译...arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc , 这是 Google 提供的 Android...gcc 编译器的其它编译选项 --arch=arm \ // 指定目标体系结构为 ARM --target-os=android // 指定目标操作系统为 Android 交叉编译 相关的配置...; --sysroot 配置 交叉编译工具链 的 头文件 和 函数库 搜索路径 ; --extra-cflags="$FLAGS" 配置 gcc / g++ 编译器的 额外选项 ; --arch=arm

    99400

    在WSL上编译并运行全志XR806的完全体demo

    LLVM不需要下载和安装,这里使用的是gcc。在固件编译 - XR806中,会提到如何配置编译工具链,这里不再赘述。 SDK中的mkimage是32位程序,但是WSL 1默认并不支持32位程序。...注:如果使用PuTTY的话,推荐在连接时勾选Terminal的Implicit CR in every LF选项,这样可以避免回显字符换行不回车的尴尬。...不急,我们再回到sdk目录,开始进行二阶段编译: hb build -f 这次编译看起来一切顺利,直到……最后遇到了这么一个编译错误: [OHOS ERROR] /home/metro/tools/gcc-arm-none-eabi.../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: ../../../...../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: ../../../..

    13810

    深入浅出GCC编译

    一、GCC交叉编译工具链 GCC编译工具链包含了GCC编译器在内的一整套工具,主要包含了GCC编译器、Binutils工具集、glibc标准函数库。...所以,现在我们所说的GCC是指GNU编译器套件(GNU Compiler Collection),并且现在的GCC还可以进行交叉编译(在一个平台下编译包含另一个平台的代码)。...词法分析:词法分析是编译过程的第一个阶段,这个阶段的任务可以看成是从左到右一个字符一个字符地读入源程序,从中识别出一个个单词符号,即对构成源程序的字符流进行扫描然后根据构词规则识别单词(也称单词符号或符号...(7)-Wall 显示更多警告信息 当GCC编译过程中检查出错误的话,它就会中止编译,并报错。...(9)-lstdc++ 编译C++源文件 直接用gcc编译C++源文件,是无法编译编译C++源文件有两种方法,一种是使用 -lstdc++ 选项,另一种是使用 g++ 编译

    26010

    ARM 之七 主流编译器(armcc、iar、gcc for arm、LLVM(clang))详细介绍

    GCC for ARM(这个名字是我自己起的,用来代指所有基于 GCC 的针对 ARM 平台的编译套件) 是基于 GCC 开发的,用来编译生成 ARM 内核可执行文件的编译套件,也叫 ARM 交叉编译工具链...例如 arm-none-eabi 中的 none 表示既没有 vendor 也没有 os 支持。 前面说过,GCC for ARM 是基于 GCC 开发的。...Codesourcery 公司(目前已经被 Mentor 收购)基于 GCC 推出的 ARM 交叉编译工具。...arm-none-elf-gcc: 用于交叉编译 ARM MCU(32位)芯片,如 ARM7、ARM9、Cortex-M/R 芯片程序。...aarch64-linux-gnu: 针对于目标平台是 Linux 系统,用于交叉编译 ARMv8 64 位目标中的裸机程序、u-boot、Linux kernel、filesystem 和 App 应用程序

    11.3K34

    汇编语言之GNU ARM

    Collection)GNU编译器套件,GNU提供的一整套的工具集,这套工具集中包含了汇编器,编译器和链接器,二进制转换,调试工具等 GCC优势: 免费开源 贴近系统底层,功能强大,灵活性高 跨平台,...方便交叉编译 GCC劣势: 工具基本采用命令行方式,学习和使用门槛较高 接下来我们要学习的就是GNU计划众多的产物之一GNU FOR ARM 汇编器与指令集 什么是汇编器 将汇编语言翻译成机器码的工具...ADS工具上,适用于ARM架构,我们也一般称之为ADS汇编器 两种ARM汇编器的各自用途 ARMASM汇编器:一般用于windows平台 GAS汇编器:支持windows平台和linux平台,方便跨平台交叉编译...如果你是从事android开发,有兴趣可以去翻NDK r17以下版本的库,里面用的编译工具就是GCC GNU ARM开发环境搭建 我们需要准备以下两个工具: GCC编译套件 安卓模拟器 GCC编译套件根据...伪指令:没有与之对应的机器码,无法被cpu识别,只能被编译器识别,不同编译器伪指令不一样 不同的CPU对应不同的指令集;不同的汇编器对应不同的语法和伪指令集 例子:ARM原生编译器和GNU FOR

    2.2K30
    领券