源码之家

  • 首页
  • 文章
  • 问答
  • 下载
您的位置: 首页  >  文章  >  鲲鹏服务器GCC交叉编译环境的搭建

鲲鹏服务器GCC交叉编译环境的搭建

分类: 文章 • 2024-07-26 17:34:34
【鲲鹏翱翔】鲲鹏服务器GCC交叉编译环境搭建指南

1、简介

交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码。本指南主要内容为在非ARM架构服务器环境下搭建ARM的GCC编译环境,编译基于ARM架构的应用软件。交叉编译工具链是为了编译、链接、处理和调试跨平台体系结构的程序代码。除了体系结构相关的编译选项以外,其使用方法与Linux主机上的GCC相同。

搭建交叉编译环境,即安装、配置交叉编译工具链。在该环境下编译出ARM架构下Linux系统所需的操作系统、应用程序等,然后再上传到ARM服务器执行。

2、环境

类别

版本

配置

备注

ARM测试服务器

CentOS7.5

ARM通用计算增强型 | rc3.xlarge.4 | 4vCPUs | 14GB

华为云官网正在公测

x86编译服务器

CentOS7.5

2vCPUs|4GB|s3.large.2

 

1.在华为云官网购买https://www.huaweicloud.com/product/ecs.html

2.本地服务器部署Centos7.5

x86编译服务器

Ubuntu16.04

2vCPUs|4GB|s3.large.2

1.在华为云官网购买https://www.huaweicloud.com/product/ecs.html

2.本地服务器部署Ubuntu16.04

交叉编译器

arm-linux-gcc

 

5.5.0

https://releases.linaro.org/components/toolchain/binaries/5.5-2017.10/aarch64-linux-gnu/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz

鲲鹏服务器GCC交叉编译环境的搭建

3、交叉编译器安装(x86服务器)

3.1.安装标准的C开发环境

执行以下命令:

Ubuntu: apt-get install build-essential

CentOS: yum groupinstall Development Tools

3.2.在/usr/local下建立名为ARM-toolchain的文件夹

mkdir   /usr/local/ARM-toolchain

3.3 下载gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz

    可以通过wget的形式下载

cd   /usr/local/ARM-toolchain

wget https://releases.linaro.org/components/toolchain/binaries/latest-5/aarch64-linux-gnu/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz

     也可以从网页上下载后上传到/usr/local/ARM-toolchain目录下。交叉编译工具链的地址在

https://releases.linaro.org/components/toolchain/binaries/latest-5/aarch64-linux-gnu/

      下载gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz

下载完成后,解压tar包

tar -xvf   gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu.tar.xz

3.4.配置环境变量

修改配置文件,在配置文件的最后一行加入路径配置:

Ubuntu:vim /etc/bash.bashrc

# Add ARM toolschain path

PATH= /usr/local/ARM-toolchain/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu/bin:"${PATH}"

CentOS: vim /etc/profile

# Add ARM toolschain path

export   PATH=$PATH:/usr/local/ARM-toolchain/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu/bin

3.5.环境变量生效与测试

执行以下命令:

Ubuntu:source /etc/bash.bashrc

         aarch64-linux-gnu-gcc  -v

执行上面的命令,显示arm-linux-gnueabi-gcc -v信息和版本

CentOS: source /etc/profile

         aarch64-linux-gnu-gcc  -v

执行上面的命令,显示arm-linux-gnueabi-gcc -v信息和版本

鲲鹏服务器GCC交叉编译环境的搭建

4、测试

4.1.在x86服务器交叉编译

1、创建hello.c

执行:vim hello.c

#include <stdio.h>

int main(void)

{

            printf("hello linux\n");

          return   0;

}

2.交叉编译

执行:aarch64-linux-gnu-gcc -o arm-hello hello.c

4.2.测试执行

1、在x86服务器上测试

执行:chmod +x arm-hello

执行:./arm-hello

页面显示:-bash: ./arm-hello: cannot   execute binary file

 

2. 拷贝执行文件至ARM服务器

执行:chmod +x arm-hello

执行:./arm-hello

页面显示:hello linux

 

5、参考信息

     交叉编译指导: https://releases.linaro.org/components/toolchain/binaries/

https://blog.****.net/mars1743/article/details/20492285

 

6、FAQ

     待补充


相关推荐

  • NanoPC-T4学习记录---(10)ubuntu18上搭建NanoPC-T4的Qt交叉编译环境
  • arm-linux-gcc交叉编译环境的安装
  • 鲲鹏服务器GCC交叉编译环境的搭建
  • GCC编译器简明教程(Linux下C语言开发环境的搭建)
  • 嵌入式交叉编译环境的搭建过程图文解说
  • 嵌入式交叉编译环境的搭建过程图文解说
  • Micropython开发之前篇--基于Ubuntu的Micropython交叉编译环境搭建
  • Windows下Cocos2dx-3.10的Android交叉编译环境搭建
  • Ubuntu 16.04(64bit)嵌入式交叉编译环境搭建arm-linux-gcc使用
  • windows环境下 eclipse基于stm32的GCC交叉编译的 ST-LINK下载环境的搭建
  • 图像的平移及代码实现
  • 离散余弦变换(DCT)
    网站免责声明 网站地图 最新文章 用户隐私 版权申明
本站所有数据收集于网络,如果侵犯到您的权益,请联系网站进行下架处理。   

Copyright © 2018-2021   Powered By 源码之家    备案号:   粤ICP备20058927号