Cross Compiler Issues

Uploaded from authorPOINTLite
Views:
 
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

Cross-Compiler Issues: 

Cross-Compiler Issues EPICS Meeting, May 2001 Markus Janousch (SLS)

Outline: 

Outline What and why EPICS, VxWorks Tool Chain (GCC, Binutils) How to build Open issues Conclusions

Why Cross Compilers?: 

Why Cross Compilers? RT-embedded systems Special hardware Real world events Dedicated systems No development tools (VxWorks, RTEMS) Mainframes, PCs Common hardware Many applications General systems Many development tools Tool Chain TARGET HOST

VxWorks, EPICS Relationship: 

VxWorks, EPICS Relationship VxWorks Kernel (OS), … No development tools on the target Development on the host EPICS Collection of applications Runs on RT-system C source code Tornado

A Tool Chain: 

A Tool Chain Compiler Preprocessor Assembler Archiver Tornado 1 based on GNU GCC for compiler (2.7.2) Binutils (2.7.1) No Tornado available for Linux Host (ver. < 3). Linker Loader Debugger … Libraries

How to build a X-compiler: 

How to build a X-compiler 1. Prerequisites Have -gcc-2.8.1 + patches -binutils 2.9.1 + patches -VxWorks header files (Tornado 1) 2. ./configure –prefix=/usr/local/cross –target=powerpc-wrs-vxworks --… 3. make all install 4. Renaming of executables, to conform to Tornado 5. RPMs for Host=(RH6,7), target = 68k, PPC

Newer Versions: 

Newer Versions Latest versions gcc-2.95.3 Binutils 2.11 Don’t use gcc-2.96(97)! See RH7.0 desaster. Can give instructions how to build.

Open Issues: 

Open Issues C++, name mangling, munching, STL, IO, ANSI, … What happens in gcc-3? What do others?

Conclusions: 

Conclusions Use development under Linux exclusively. VxWork kernel build on a Sun. Occasionally use other Tornado tools.