Embedded Programming

Contents :
Pre-Processor
Cross Compile
Toolchains

 

Pre-Processor

http://www.cprogramming.com/tutorial/cpreprocessor.html

Cross Compile

.

GCC

https://gcc.gnu.org/gcc-4.8/cxx0x_status.html

O GCC é um compilador que suporta várias linguagens de programação.

É  o compilador de eleição da maior parte dos programadores que desenvolvem software que pode ser executado numa grande variedade de hardware.

$ gcc

Linguagem Suportada:
– C
– C++ (G++)
– Java (GCJ)
– Ada (GNAT)
– Objective-C
– Objective-C++
– Fortran (GFortran).

Processadores Alvo supportados :
– ARM
– MIPS
– x86-x64
– Atmel AVR
– etc…

GCC online documentation

http://gcc.gnu.org/onlinedocs/

https://gcc.gnu.org/releases.html      gcc releases

https://gcc.gnu.org/           gcc home page

.

GDB

GNU debugger

http://sourceware.org/gdb/download/onlinedocs/    online docs

 

.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Using Eclipse   http://www.lvr.com/eclipse1.htm

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

.

http://hertaville.com/  :

  1. An Overview of the Build Process
  2. A Sample Linker Script
  3. The Startup file
  4. The iotogglem0 Project Folder Structure and the Makefile

.

ToolChains

.

https://launchpad.net/gcc-arm-embedded

.

http://elinux.org/Toolchains

Download GCC ARM embedded       https://launchpad.net/gcc-arm-embedded/+download

How to build toolchains,  GNU Tools for ARM Embedded Processors       How-to-build-toolchain.pdf(md5)

………   Sourcery CodeBench Lite

.

Toolchains have a loose name convention like arch[-vendor][-os]-abi.

  • arch is for architecture: arm, mips, x86, i686
  • vendor is tool chain supplier: apple,
  • os is for operating system: linux, none (bare metal)
  • abi is for application binary interface convention: eabi, gnueabi, gnueabihf

For your question, arm-none-linux-gnueabi and arm-linux-gnueabi is same thing. arm-linux-gcc is actually binary for gcc which produces objects for ARM architecture to be run on Linux with default configuration (abi) provided by toolchain.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

 

Leave a comment