wiki:GCI/Coding/HelloWorld

Version 9 (modified by michalp2213, on 12/20/15 at 22:13:22) (diff)

--

GCI Hello World Task

Table of Contents

    Error: Page GCI/HelloWorld does not exist

This task consists of following the instructions at GSOC Getting Started and helping improve the instructions.

We prefer you use a GNU/Linux distribution if possible, as these tend to be the best supported.

Directions for Students

Follow the instructions at https://devel.rtems.org/wiki/GSoC/GettingStarted EXCEPT:

  • Use your favorite GNU/Linux distribution.
  • Build your own tools using the RTEMS Source Builder (RSB)
  • Report back on the process to help us improve the GSoC Getting Started page to be current, clear, and correct.
  • Submit a git patch HowTo create git patch to your GCI claimed task (GCI website).
  • Submit a screenshot of your modified running Hello World program to your GCI claimed task (GCI website).
  • Fill in an entry in the Feedback table below.
  • If you run into trouble, ask for help on the RTEMS Users mailing list, IRC channel, or use Google to search for similar problems others may have experienced before.

Feedback

Note: Some sample feedback from previous years is included.

Student Host OS RTEMS Target Feedback
Bryan D. Arch Linux sparc-rtems4.11 While compiling the tools and RTEMS I only encountered two problems. The first one was with binutils; for some reason, it refused to compile outside the source directory, so I compiled it in the source directory. The second problem was with building RTEMS itself. The error was easy to fix though and just required removing the --disable-posix flag when calling ./configure.
Kevin F. Linux Mint 13 LTS sparc-rtems4.11 I made lots of errors myself, but overall the instructions were fairly clear. Perhaps the RSB Quick Start should explain moving executables a bit more (like where to find them) and the RTEMS Quick Start should have remarked that you should put export the PATH to the tools bin you compiled. I needed python2.7-dev installed.
Evan M. Ubuntu sparc-rtems4.11 I found the directions straightforward, although I do admit I had some trouble from time to time. It also seemed like several pages contradicted each other, but that might have been on my side due to my lack of experience.
Kkvazar Q. Fedora 20 sparc-rtems4.11 I wasn't able to finish the task, because I got lost in the documentation, the pages weren't well related and were contradicting. Some useful pages weren't easy to find such as the git README. I expected sb-check to tell me about missing devel libs, but it didn't. 'bootstrap' was hard to find and it failed on missing files. Most of the questions I had were asked online, but weren't answered.
Ralph H. Linux Mint 17.1 sparc-rtems4.11 Instructions were very clear and simple to follow, albeit spread over several pages. Compiling RBS was simple, with the error messages clear (I only had to install CSV). Finding information was easy, and compilation was successful first time (with slight modifications to certain paths to match my projects directory path). I should probably note that I likely had most of the dependencies for compiling RBS, etc. already as I had previously manually built a cross-targeted GCC (and so I was already aware of such things as adding targeting executables to the path, as well as using git relatively proficiently, thus I did not need to locate information on such topics). The source tree of RTEMS is simple to navigate, and there were no issues with rebuilding and debugging/running a modified executable.
Tan G. Ubuntu 15.10 sparc-rtems4.11 I had a fairly difficult time doing the task both because of some errors in the instructions and some of my own. However, most of these could be solved by looking at the logs and searching around a bit. Two problems I had in particular were that build-rep chose python2.7 instead of python2.7-dev and I had to install it directly and the package for git-send-email was named git-email unlike what the instructions said. The first one was especially problematic because I didn't understand the problem until I looked at the error log instead of the incomprehensibly long build log.
Alex S. Debian Jessie (64-bit) sparc-rtems4.11 The documentation was straightforward and easy to follow, but at first the source tree of RTEMS can be confusing, and the architecture-specific tools need to be exported to your PATH to be readily used. The directions for building RBS were harder to follow than for RTEMS. Note for future newcomers: compiling with -j`nproc` will significantly speed up your build on multi-core hosts.
Michał P. Arch Linux sparc-rtems4.11 Instructions were relly easy to follow, I had no problem building RTEMS. Unfortunatelly, RSB scripts assume that /usr/bin/python is python2, but that's an issue with nearly every build script and it's easy to solve, so it was not a big problem.