一、前言

上一篇文章说了,在开发之前必须先搭建起交叉编译环境,于是这里我们就介绍一下环境的搭建过程。

其实在所安装的Vivado HLx 2016.4中就包含了Xilinx SDK,在该SDK上即可开发Linux上的应用程序,但我在使用的过程中发现该SDK自带的编译器与通常手动安装的交叉编译链有所不同,导致在程序编写的过程中缺少了很多头文件。为此,我试过将Ubuntu系统中的相关Linux头文件拷贝到了Windows系统并添加至SDK的搜索路径中,但最终由于Windows与Linux系统的诸多不同而失败。下一步,我将直接在Ubuntu系统上安装单独的SDK工具,并尝试将手动安装的交叉编译链添加至SDK中。我这么做的目的是将SDK提供的BSP和Linux系统下开发的应用程序结合起来,而不用在Linux系统中开发程序时重写BSP的相关接口。

下面回归到我们的主题,交叉编译环境的搭建,其实就是在Ubuntu中安装Xilinx提供的交叉编译链。

二、软件安装

[本文系统:Ubuntu14.04.5 LTS 64bit]

1、下载Xilinx交叉编译链:xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin(网络上有不少分享链接)

2、将交叉编译链拷贝到Ubuntu系统中,安装前在终端运行命令:“ sudo dpkg-reconfigure dash ”,在弹出的界面上选择“ 否 ”,退出。

(作用:设置默认的shell为bash;原因:Ubuntu安装的时候使用了dash,dash比bash体积小速度快,兼容性高。但是在bash下可以正常运行的一些sh在dash下不能使用,造成了一些麻烦。为了解决之,键入sudo dpkg-reconfigure dash,重新配置dash,并选择“no”,即不使用dash。)

3、在终端运行安装命令:“ sudo ./xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin ”,然后出现安装界面,选择默认设置安装即可。

4、额外配置:手动添加环境变量,在终端运行命令“ gedit /etc/bash.bashrc ”打开bash.bashrc文件,在文件中添加如下内容:

export ARCH=arm
export CROSS_COMPILE=arm-xilinx-linux-gnueabi-
export PATH=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/bin/:$PATH

(作用:将编译环境路径加入到PATH环境变量,以后编译程序时无需再使用export命令指定;其中,“ /root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux ” 是交叉编译链的默认安装路径)

5、验证:在终端输入命令“ arm-xilinx-linux-gnueabi-gcc-v ”,若能打印出相关版本信息则说明安装成功。

PS:由于交叉编译链默认安装在了 /root 目录下,所以在终端上使用一般用户时可能无法访问,切换为 root 身份即可。

后续将继续探索前沿所说的“将SDK提供的BSP和Linux系统下开发的应用程序结合起来”,以及使用Code Blocks来作为开发工具(需将安装的交叉编译链配置进去)。

参考链接:

ZedBoard移植嵌入式Linux教程(5)——安装交叉编译工具链 | 电子创新网赛灵思中文社区

搭建Xilinx交叉编译环境 - CSDN博客

Zynq7000开发系列-3(Xilinx交叉编译环境搭建)的更多相关文章

  1. Zynq7000开发系列-4(新:Xilinx交叉编译环境搭建)

    一.前言  本来上一篇文章已经讲了Xilinx交叉编译环境的搭建,但是我在后续的使用中发现:使用2011年版本的交叉编译链编译OpenCV 3.1.0时出现错误: 网络搜索一番,查明是交叉编译链的问题 ...

  2. windows phone 8 开发系列(一)环境搭建

    一:前奏说明 本人一名普通的neter,对新玩意有点小兴趣,之前wp7出来的时候,折腾学习过点wp7开发,后来也没怎么用到(主要对微软抛弃wp7的行为比较不爽),现在wp8已经出来一段时间了,市场上也 ...

  3. Zynq7000开发系列-7(在Zybo上运行Linaro桌面系统)

    目标板:Zybo(7Z010) 主机操作系统:Ubuntu 14.04.5 LTS 64bit 交叉编译链: arm-xilinx-linux-gnueabi-       [gcc version ...

  4. YA157C交叉编译环境搭建

    目录 1.开发板简介 3.主机搭建交叉编译环境 4.编译第一个ARM Linux程序--Hello World 5.在开发板上运行Hello World程序 6.ssh登录开发板 7.注意 8.she ...

  5. Exynos4412交叉编译环境搭建

    Exynos4412交叉编译环境搭建 交叉编译:在PC机(x86平台)上开发程序,在ARM板上运行,提高开发.编译速度. 环境: Tiny4412SDK1506开发板 需要软件: arm-linux- ...

  6. Ubuntu系统下arm-linux-gcc交叉编译环境搭建过程

    搭建所需环境Linux版本:Ubuntu 14.10 交叉编译器版本:arm-linux-gcc-4.4.3资源链接 何为交叉编译环境搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下 ...

  7. 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机)

    引言 在大数据学习系列之一 ----- Hadoop环境搭建(单机) 成功的搭建了Hadoop的环境,在大数据学习系列之二 ----- HBase环境搭建(单机)成功搭建了HBase的环境以及相关使用 ...

  8. arcgis api for flex 开发入门(一)环境搭建

    http://www.cnblogs.com/wenjl520/archive/2009/06/02/1494514.html arcgis api for flex 开发入门(一)环境搭建arcgi ...

  9. Android开发使用控件入门--环境搭建

    Android开发使用控件入门--环境搭建 软件名称(,梦,,想.CAD  ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android S ...

随机推荐

  1. [2017-10-25]Abp系列——集成消息队列功能(基于Rebus.Rabbitmq)

    本系列目录:Abp介绍和经验分享-目录 前言 由于提交给ABP作者的集成消息队列机制的PR还未Review完成,本篇以Abplus中的代码为基准来介绍ABP集成消息队列机制的方案. Why 为什么需要 ...

  2. Pager-taglib

    <%@ taglib uri="http://jsptags.com/tags/navigation/pager" prefix="pg" %> & ...

  3. HDU4565 So Easy! —— 共轭构造、二阶递推数列、矩阵快速幂

    题目链接:https://vjudge.net/problem/HDU-4565 So Easy! Time Limit: 2000/1000 MS (Java/Others)    Memory L ...

  4. Hihocoder 1625 : 重复字符串匹配 (KMP)

    描述 给定两个字符串A和B,请你求出字符串A最少重复几次才能使得B是A的子串. 例如A="hiho",B="hohihohi".则A重复3次之后变为" ...

  5. 万径人踪灭(FFT+manacher)

    传送门 这题--我觉得像我这样的菜鸡选手难以想出来-- 题目要求求出一些子序列,使得其关于某个位置是对称的,而且不能是连续一段,求这样的子序列的个数.这个直接求很困难,但是我们可以先求出所有关于某个位 ...

  6. groovy语言和grails框架

    Groovy 是一种动态语言,它在 JVM 上运行,并且与 Java 语言无缝集成. Groovy 可以大大减少 Java 代码的数量.在 Groovy 中,不再需要为字段编写 getter 和 se ...

  7. linux进程状态D和Z的处理

    长期生活在 Linux 环境里,渐渐地就有一种环保意识油然而生.比如,我们会在登录提示里写上"悟空,我跟你说过叫你不要乱扔东西,乱扔东西是不对的.哎呀我话没说完你怎么把 棍子扔掉了?月光宝盒 ...

  8. Asset Catalog Help (四)---Adding an iOS App Icon Set or Launch Image Set

    Adding an iOS App Icon Set or Launch Image Set Organize different resolutions of your app icons and ...

  9. 【eclipse插件开发实战】 Eclipse插件开发6——eclipse在线翻译插件Translator开发实例详解

    Eclipse插件开发6--eclipse在线翻译插件Translator开发实例详解 在上一篇文章中讲到了一个简单的eclipse插件开发实例,主要是对插件工程的基本创建步骤进行了讲解,这篇文章当中 ...

  10. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %>

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs&qu ...