The Build Process. of (GNU Tools for ARM Embedded Processors) 2016-03



Similar documents
ARMSDK-VM Virtual Appliance A preconfigured Linux system

Building graphic-rich and better performing native applications. Pro. Android C++ with the NDK. Onur Cinar

LedgerSMB on Mac OS X An Installation Guide

Linux Development Environment Description Based on VirtualBox Structure

Installing Proview on an Windows XP machine

Local Caching Servers (LCS): User Manual

Steps for running C-program

AzMERIT Secure Browser Installation Manual For Technology Coordinators

Adafruit's Raspberry Pi Lesson 6. Using SSH

Installing (1.8.7) 9/2/ Installing jgrasp

Version Control with Subversion and Xcode

Yocto Project Eclipse plug-in and Developer Tools Hands-on Lab

Getting Started With! CGminer/BFGminer!

Backing Up TestTrack Native Project Databases

Installing OCFA on Ubuntu. Practical installation procedures, Installing The Open Computer Forensics Architecture on Ubuntu

Mac System Setup Guide (Pre-Class)

GTk+ and GTkGLExt Build Process for Windows 32- bit

Desktop : Ubuntu Desktop, Ubuntu Desktop Server : RedHat EL 5, RedHat EL 6, Ubuntu Server, Ubuntu Server, CentOS 5, CentOS 6

1. Product Information

Online Backup Client User Manual Linux

PowerPanel Business Edition Installation Guide

Eclipse installation, configuration and operation

Consolidated Monitoring, Analysis and Automated Remediation For Hybrid IT Infrastructures. Goliath Performance Monitor Installation Guide v11.

SARANGSoft WinBackup Business v2.5 Client Installation Guide

Future Technology Devices International Ltd. Mac OS X Installation Guide

RHadoop Installation Guide for Red Hat Enterprise Linux

Install MS SQL Server 2012 Express Edition

HP SDN VM and Ubuntu Setup

QNX Software Development Platform 6.6. Installation Guide

RecoveryVault Express Client User Manual

Code::Blocks Student Manual

YubiKey OSX Login. yubico. Via Yubico-PAM Challenge-Response. Version 1.6. October 24, 2015

Code::Block manual. for CS101x course. Department of Computer Science and Engineering Indian Institute of Technology - Bombay Mumbai

Net/FSE Installation Guide v1.0.1, 1/21/2008

Procedure to Create and Duplicate Master LiveUSB Stick

Online Backup Linux Client User Manual

Student installation of TinyOS

VERITAS NetBackup 6.0 Encryption

Solr Bridge Search Installation Guide

Online Backup Client User Manual

Working with Docker on Microsoft Azure

Addonics T E C H N O L O G I E S. NAS Adapter. Model: NASU Key Features

VMware Horizon FLEX User Guide

CONFIGURING MICROSOFT SQL SERVER REPORTING SERVICES

License Patrol TM Mac Client Installation Guide 7.0 for Mac OS X. September 2015 VERALAB TM

SQL Server 2008 R2 Express Edition Installation Guide

Consolidated Monitoring, Analysis and Automated Remediation For Hybrid IT Infrastructures. Goliath Performance Monitor Installation Guide v11.

Pro-Watch Software Suite Installation Guide Honeywell Release 4.1

simplify monitoring Consolidated Monitoring, Analysis and Automated Remediation For Hybrid IT Infrastructures

User Manual of the Pre-built Ubuntu 9 Virutal Machine

Secure Browser Installation Manual

Using Internet or Windows Explorer to Upload Your Site

Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux

VERSION 9.02 INSTALLATION GUIDE.

Ulteo Open Virtual Desktop Installation

insync Installation Guide

Installing C++ compiler for CSc212 Data Structures

Installing LearningBay Enterprise Part 2

EventTracker: Support to Non English Systems

File Manager Pro User Guide. Version 3.0

Using a login script for deployment of Kaspersky Network Agent to Mac OS X clients

SAPIP GUI INSTALLATION. Table of Contents

My name is Robert Comella. I am a SANS Technology Institute (STI) student who is nearly finished with my master of science in engineering degree.

OpenGeo Suite for Linux Release 3.0

ERIKA Enterprise pre-built Virtual Machine

Automating client deployment

Installing Bacula Client on Mac OS X Server

1. Install a Virtual Machine Download Ubuntu Ubuntu LTS Create a New Virtual Machine... 2

Setting Up the Device and Domain Administration

INASP: Effective Network Management Workshops

4PSA Total Backup User's Guide. for Plesk and newer versions

Installing Sun's VirtualBox on Windows XP and setting up an Ubuntu VM

Installing TeamCall Server on Mac OS X

LABORATORIUM 1 Setup and basic configuration of Asterisk BPX on Linux

MATLAB on EC2 Instructions Guide

Hadoop Installation MapReduce Examples Jake Karnes

CPE111 COMPUTER EXPLORATION

MarkLogic Server. Installation Guide for All Platforms. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

Installing an open source version of MateCat

Buildroot for Vortex86EX (2016/04/20)

USB Stick Driver Installation Instructions

Ahsay Offsite Backup Server and Ahsay Replication Server

Using Intel C++ Compiler in Eclipse* for Embedded Linux* targets


Newton2 Developers Guide

How to - Install EventTracker and Change Audit Agent

AWS Schema Conversion Tool. User Guide Version 1.0

1. Downloading. 2. Installation and License Acquiring. Xilinx ISE Webpack + Project Setup Instructions

SuperOffice AS. CRM Online. Installing the Citrix Online Web plug-in

VPN: Virtual Private Network Setup Instructions

How to Install Multicraft on a VPS or Dedicated Server (Ubuntu bit)

Building Ruby, Rails, LightTPD, and MySQL on Tiger

QuickDNS 4.6 Installation Instructions

Parallels Transporter Agent

Consolidated Monitoring, Analysis and Automated Remediation For Hybrid IT Infrastructures. Goliath Performance Monitor Installation Guide v11.

Transcription:

The Build Process of (GNU Tools for ARM Embedded Processors) 2016-03

Copyright c 2012-2016 ARM Ltd.

i Table of Contents Preface.............................................. 1 1 Build GNU Tools on Ubuntu 8.10............. 2 1.1 Install Ubuntu................................................. 2 1.2 Tune environment and install required softwares................ 2 1.2.1 Change /bin/sh to bash................................... 2 1.2.2 Change software sources to Main server.................... 3 1.2.3 Install common tools and libraries......................... 4 1.2.4 Download and deploy prebuilt native tools................. 4 1.3 Build GNU Tools for ARM Embedded Processors............... 6 2 Build GNU Tools on Mac OS X............... 7 2.1 Prepare a Mac OS X environment.............................. 7 2.2 Install the Command Line Tools for Xcode..................... 8 2.3 Install MacTeX to build PDF format documents................ 9 2.4 Build the tool chain under Mac OS X.......................... 9 Appendix A Known Issues..................... 10

Preface 1 Preface This manual provides a step-by-step guide to help you build GNU Tools for ARM Embedded Processors on a newly installed Ubuntu 8.10 operating system. Note that the steps below may most likely also work on an Ubuntu which is not newly installed or version other than 8.10, but it is not guaranteed. In this case please go through Appendix A [Known Issues], page 10 before you go, and you need to solve any other problems you may encounter by yourself. We highly appreciate if you could share the problems and solutions with us.

Chapter 1: Build GNU Tools on Ubuntu 8.10 2 1 Build GNU Tools on Ubuntu 8.10 1.1 Install Ubuntu Ubuntu 8.10 ISO image is available from http://old-releases.ubuntu.com /releases/8.10/ubuntu-8.10-desktop-i386.iso. You can install it as a native system or a virtual machine. The command lines provided in this document are all using user id build as an example, so please create a new user called build in the system. Otherwise, you have to replace user id build with your own one. 1.2 Tune environment and install required softwares 1.2.1 Change /bin/sh to bash Some shell scripts in gcc and other packages are incompatible with the dash shell, which is the default /bin/sh for Ubuntu 8.10. You must make /bin/sh a symbolic link to one of the supported shells: saying bash. Here on Ubuntu 8.10 system, this can be done by running following command firstly: $ sudo dpkg-reconfigure -plow dash Then choose No in the Configuring dash popup dialog and press enter. You can run following command and check that /bin/sh points to bash : $ ls -l /bin/sh... /bin/sh -> bash

Chapter 1: Build GNU Tools on Ubuntu 8.10 3 1.2.2 Change software sources to Main server On Ubuntu 8.10 system, click System->Administration->Software Sources to open Software Sources dialog, choose Main server in Download from: list box, then click close. You will be prompted by a window saying The information about available software is out-of-date, please click Reload. And then there will be a warning message box popped up, which can be just ignored by clicking Close. Edit the file using command line: $ sudo vi /etc/apt/sources.list replace all http://*.ubuntu.com with http://old-releases.ubuntu.com in that file, save and exit. Run following command to update package list. It should not fail, or else something has been wrong. $ sudo apt-get update

Chapter 1: Build GNU Tools on Ubuntu 8.10 4 1.2.3 Install common tools and libraries Install common tools and libraries needed by build process with below command: $ sudo apt-get install apt-src \ scons \ mingw32-runtime \ p7zip-full \ gawk \ gzip \ perl \ autoconf \ m4 \ automake \ libtool \ libncurses5-dev \ gettext \ gperf \ dejagnu \ expect \ tcl \ autogen \ guile-1.6 \ flex \ flip \ bison \ tofrodos \ texinfo \ g++ \ gcc-multilib \ libgmp3-dev \ libmpfr-dev \ debhelper \ texlive \ texlive-extra-utils Note that the package management software might complain that several packages cannot be installed properly while installing texlive and texliveextra-utils. It won t harm our building process, please just ignore it now. Some of those tools might be unnecessary, but it won t hurt if installed. 1.2.4 Download and deploy prebuilt native tools In order to save effort to prepare the native build tools, we provide prebuilt ones at website https://launchpad.net/gcc-arm-embedded-misc /native-build-tools/20150408. The related source package and script are also provided. Please download the tool and decompress it to a proper place, it will be used in subsequent steps to build gcc arm embedded toolchain. The command to decompress it looks like: tar xf prebuilt-native-tools.tar.lzma --lzma

Chapter 1: Build GNU Tools on Ubuntu 8.10 5 Please be noted that those prebuilt tools are for Ubuntu 8.10 32-bit and not suitable for any other build platforms. For those working on other build platforms, please either prepare your own build tools and use them through option build tools of build script or just use the ones from your system by not specifying the build tools option.

Chapter 1: Build GNU Tools on Ubuntu 8.10 6 1.3 Build GNU Tools for ARM Embedded Processors If you download and decompress the prebuilt tools successfully, you have set up the building environment. You can now start to build the toolchain by yourself with below commands: #Copy the src release package into ~/toolchain/ directory $ cp gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2 ~/toolchain #Prepare source codes $ cd ~/toolchain $ tar -xjf gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2 $ cd./gcc-arm-none-eabi-5_3-2016q1-20160330/src $ find -name '*.tar.*' xargs -I% tar -xf % $ cd../ #Start building the toolchain. #Can specify "--skip_steps=mingw32" option to skip building windows host #toolchain, and if specify that option when building prerequisites, #you have to specify it when building toolchain too. # #Without option --build_tools, the tools in current PATH will be used. #You can download and deploy the provided prebuilt one, use it like #./build-prerequisites.sh --build_tools=/home/build/prebuilt-native-tools # or./build-toolchain.sh --build_tools=/home/build/prebuilt-native-tools $./build-prerequisites.sh --build_tools=your_native_tools_path $./build-toolchain.sh --build_tools=your_native_tools_path After this, you can cd into ~/toolchain/gcc-arm-none-eabi-5_3-2016q1-20160330/pkg and find the built toolchain/source code packages and the md5 checksum file.

Chapter 2: Build GNU Tools on Mac OS X 7 2 Build GNU Tools on Mac OS X In addition to the build on Ubuntu, the build scripts in same source package can also be used on Mac OS X to natively build a tool chain whose host is Mac OS X and target is arm-none-eabi. In this step we will describe how to install required software components and how to execute the build scripts. After this step you should be able to generate a same tool chain with the one released. Due to resource limit, this build process is only tested against Mac OS X 10.7.3 along with components listed below. 2.1 Prepare a Mac OS X environment The hardware should be an x86-based Mac machine like imac. The installed OS should be Mac OS X which is updated to 10.7.3. The way to find out the Mac OS X version information is to click the Apple menu and choose About This Mac.

Chapter 2: Build GNU Tools on Mac OS X 8 For the environment we are using, it looks as below: 2.2 Install the Command Line Tools for Xcode This component is originally part of Apple Xcode but can be installed separately without Xcode. It can be freely obtained from Apple s official website https://developer.apple.com/downloads/index.action. A valid Apple ID is required to login and download. The one we are using is in the item named Command Line Tools for Xcode - June 2012. After the download finishes, just double click the.dmg file and follow the instructions to install it.

Chapter 2: Build GNU Tools on Mac OS X 9 2.3 Install MacTeX to build PDF format documents This is an optional step and can be skipped if PDF format documents aren t needed. The build process will use TeX engineer provided by MacTeX-2012 to generate PDF format documents. This component can be freely obtained from its official FTP server ftp://ftp.tug.org/historic/systems/mactex/2012/mactex.pkg. Its original size is approximately 2.1G. Once downloaded, just double click on the MacTeX.pkg file and follow the instructions to install it. By default the related TeX executable files won t be installed into the default path like /usr/bin, so the Terminal need to be restarted before running the build scripts. 2.4 Build the tool chain under Mac OS X With all the dependent packages installed, we can start to natively build the tool chain on Mac OS. Following are the commands and steps we are using: #Copy the src release package into ~/mac-build/ directory $ cp gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2 ~/mac-build #Prepare source codes $ cd ~/mac-build $ tar xjf gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2 $ cd./gcc-arm-none-eabi-5_3-2016q1-20160330/src $ find. -name '*.tar.*' xargs -I% tar -xf % $ cd.. #Start building the toolchain. $./build-prerequisites.sh $./build-toolchain.sh

Appendix A: Known Issues 10 Appendix A Known Issues The commands given in this document and build scripts sometimes have a problem when running on Ubuntu 9.10 due to a bug in the tar-1.22-1 package. You can update tar to an higher version. For more information, please refer to https://bugs.launchpad.net /ubuntu/+source/tar/+bug/453330. If you are using different build environment and tools, you might run into a problem where binutils can not be successfully built. This is probably caused by binutils bug 13036. For more information, please refer to http://sourceware.org/bugzilla/show_bug.cgi?id=13036.