wiki:GCI/Coding/HelloWorld

Version 22 (modified by Vijay Kumar Banerjee, on Oct 25, 2018 at 4:11:41 PM) (diff)

feedback table: fixed content that was going out of table cell

GCI Hello World Task

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 host operating system to do this. You can do this on Windows using MSYS2, a GNU/Linux distribution, MacOS, FreeBSD, etc. Guidance on many operating systems is in the Hosts section of the RTEMS Source Builder manual.
    • In many cases, you can use Virtualbox to execute the operating system virtually. Many operating system images are available are available at https://virtualboxes.org/images/ and https://www.osboxes.org/virtualbox-images/. This allows you to use a Windows computer to run a virtual machine with GNU/Linux or FreeBSD. Note that the virtual machines there may need to be updated and have extra packages installed to be suitable for building RTEMS tools and RTEMS itself.
  • Build your own tools using the RTEMS Source Builder (RSB) add "no clean" option and report the disk space used by the build, and the build time along with specs on the machine and OS you used.
  • 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 Nickname Host OS RTEMS Target Feedback
Brydog. 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.
Kev 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.
Naive. 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.
Ralphhhh. 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 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.
Michał 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.
OP. Ubuntu and OS X sparc-rtems4.11 When I built RTEMS the first time on Ubuntu, I thought the instructions were relatively clear, but at sometimes seemed vague to me. I had a few errors when trying to build the tool set with RSB, so I had to dig around in the log files multiple times. When I built RTEMS on OS X, it didn't take long and I found it much easier than doing it on Ubuntu, probably because I already had experience. I was able to get it working the first time.
Sal Fedora 28 sparc-rtems5 I think that the instructions are well explained but in the wiki, you have to jump from page to page to find everything and there are some things that seem outdated. I think that it would be better to have a unified page with a simple step-by-step explanation of the installation process and then put links for more specific things.
embeddedt Ubuntu 16.04 sparc-rtems5 Once I found the necessary commands to invoke, the RTEMS Source Builder behaved as it was supposed to. However, I ended up having to search for several documentation pages because they were either missing or difficult to find. I think that a new document should be made that contains either the whole set of steps to follow or all the links we need.
Shashvat CentOS 7 sparc-rtems5 The process described to set up the host operating system was very well compiled , the major problem i faced was that most of the documents envolved for building the rtems5 were not systematically arranged ,the process of quick start should be more explained(it was a bit vague at points.) , i suppose the explainations of various new topics(for me) like BSD(Broad support packages),Targets and architectures should be linked to the quick start , where they are first used. I faced recursive errors due to presence of corrupt files in kernel but later i decided to rebuild the system entirely and the second time it felt much easier .The mentors were very helpful , helped me get through the quick start guide(do not hesitate to ask them questions).

Directions for Mentors

Verify the patch, screenshot, and read the feedback above.

Please file tickets when a host's instructions need updating for packages.