= Canadian Cross Compiler = [[TOC(TBR/Delete/Canadian_Cross_Compiler, depth=2)]] '''Mentors:''' rtems-devel '''Students:''' Help Wanted '''Status:''' Planning '''Introduction:''' Definition of a [http://en.wikipedia.org/wiki/Cross_compiler#Canadian_Cross Canadian Cross Compiler]. MinGW lacks the capability to build a native gcc-4.7 compiler, the same bug prevents it from building a sparc-rtems4.11-gcc compiler. '''Goal:''' What is desired is a clear set of directions for how to build, and distribute, this cross compiler either on Fedora, or on Cygwin. # '''project deliverables:''' ## '''code:''' script to generate '''one''' big package that can be installed by minGW-get (or other package management tool on Windows) for a Canadian cross compiler with a Fedora build, Windows host, and rtems target. ## '''docs:''' tutorial that explains how to build such a package. Every line of code commented. ## '''testing:''' run the script on the build machine (say, Fedora), extract the toolset from the package on a freshly installed version of Windows on a VM, run gcc-testing on toolset on the host machine using a non-x86 target (say sparc), running the ticker demo on a non-x86 target, say sparc # '''required/suggested methodology:''' look at the packages for minGW and cygwin, make it match that format. # '''standards of quality:''' ## '''code:''' the toolset extracts on the host through the utilized package management system, RTEMS can be built successfully, from the toolset. ## '''testing:''' Mentors can follow the directions on the tutorial and build the toolset. Targets to be tested are: arm, sparc, i386, others as time allows # '''Possible goal extensions beyond the main objective:''' A tutorial explaining how to test the canadian cross-compiler. '''Requirements:''' List the requirements and level of expertise you estimate are required by the developer tackling this project will have to have: # '''Required level of programming language(s):''' ## Shell script: moderate ## Virtual machines: moderate # '''specific areas of RTEMS or tools:''' ## patching ## building a cross compiler ## '''Level of familiarity with RTEMS:''' none ## '''Cross-development:''' moderate ## '''GNU/Linux:''' moderate # '''Development/documentation/testing tools:''' moderate # '''Mathematical/algorithmic background:''' none # '''Other desirable skills:''' the patience of J*b, and the ability to explain things to people who don't know what you're talking about. '''Resources:''' Chris Johns, and Sebastian Huber '''Acknowledgements''' * who helped and did work = Miscellaneous Sections = As the project progresses, you will need to add build instructions, etc and this page will evolve from a project description into a HOWTO. = References = * [http://airs.com/ian/configure/configure_toc.html Canadian Cross Compiler] * [http://sourceforge.net/p/mingw/mingw-dist/ci/3576e0da4f453725df210a09395808304bb0de16/tree/msys/ mingw-dist package format] * [http://cygwin.com/setup.html how-to setup a Cygwin package] '''Other sections:''' If you have more to say about the project that doesn't fit in the proposed sections of this template, feel free to add other sections at will.