source: rtems/doc/FAQ/freesw.t @ 760777d

4.104.114.84.9
Last change on this file since 760777d was 760777d, checked in by Joel Sherrill <joel.sherrill@…>, on Jul 29, 1999 at 10:54:10 PM

Added section on ddd.

  • Property mode set to 100644
File size: 4.6 KB
Line 
1@c
2@c  COPYRIGHT (c) 1988-1998.
3@c  On-Line Applications Research Corporation (OAR).
4@c  All rights reserved.
5@c
6@c  $Id$
7@c
8
9@chapter Free Software that Works with RTEMS
10
11This section describes other free software packages that are known to work
12with RTEMS.
13
14@section Development Tools
15
16@subsection Basic Development Environment
17
18The standard RTEMS development environment consists of the following GNU
19components:
20
21@itemize @bullet
22
23@item gcc/egcs
24@item binutils
25@item gdb
26
27@end itemize
28
29Although not from the Free Software Foundation, the Cygnus newlib C
30library integrates well with the GNU tools and is a standard part of the
31RTEMS development environment.
32
33@subsection GNU Ada
34
35For those interested in using the Ada95 programming language, the GNU Ada
36compiler (GNAT) is available and has excellent support for RTEMS.
37
38@subsection DDD
39
40By far the easiest way to use DDD if you are on a Redhat Linux system is
41to retrieve the latest RPM package. I got mine from
42ftp://ftp.crc.ca/systems/linux/redhat/contrib.redhat.com/libc6/i386/ddd-dynamic-
433.1.5-1.i386.rpm.
44This particular one is for Redhat 6.0 on i386. For 5.2, I guess you
45should use libc5 instead of libc6.
46
47You also need Lesstif 0.88. I got mine from
48ftp://ftp.hungry.com/pub/hungry/lesstif/bindist/lesstif-0.88.1-1.i386.rpm
49
50Installed as RPMs, DDD and Lesstif work out-of-the-box.
51
52Both Lesstif and DDD can be built from scratch without any problems.
53
54The isntruction on how to install Lesstif are at
55http://www.cs.tu-bs.de/softech/ddd/.  They indicate that
56
57@itemize @bullet
58LessTif should be used in (default) Motif 1.2 compatibility mode.
59
60The Motif 2.0 compatibility mode of LessTif is still incomplete.
61@end itemize
62
63So configure lesstif with --enable-default-12.
64
65The configure script is broken (see  www.lesstif.org --> known problems)
66for 0.88.1. I didn't fix the script as they show, so I just have links
67in /usr/local/lib (also shown).
68
69Watch out: Lesstif installs its libraries in /usr/local/Lesstif. You
70will need to update /etc/ld.so.conf and regenerate the cache of shared
71library paths to point to the Motif 1.2 library.
72
73The student configure DDD --with-motif-libraries=/usr/local/lib
74--with-motif-includes=/usr/local/include
75
76You will need gnuplot 3.7. I got mine from
77ftp://ftp.dartmouth.edu/pub/gnuplot/gnuplot-3.7.tar.gz. Build and
78install from scratch.
79
80I start DDD from a script in $HOME/bin:
81
82@example
83#!/bin/bash
84ddd --debugger m68k-elf-gdb $1
85@end example
86
87
88Now for the hard part:
89
90under RH Linux, to get gdb to use the serial ports while running as a
91mere mortal, edit /etc/security/console.perms, and create a <serial>
92class (call it whatever you want).
93
94@example
95<serial>=/dev/ttyS* /dev/cua*
96@end example
97
98Now enable the change of ownership of these devices when users log in
99from the console:
100
101@example
102<console> 0600 <serial> 0600 root
103@end example
104
105And voila!
106
107I use minicom to communicate with the target to initiate a TFTP
108download. I then suspend minicom,  lauch DDD, and begin debugging.
109
110The procedure should be the same on other platforms, modulo the choice
111of terminal emulator program and the scheme used to access the serial
112ports. From the cygwin mailing list, I have the impression that GDB has
113some problems communicating over serial lines on that platform.
114
115P.S. GDB doesn't like getting lots of input from the program under test
116over the serial line. Actually, it doesn't care, but it looses
117characters. It would appear that flow control is not re-enabled when it
118resumes program execution. At times, it looked like the test were
119failing, but everything was OK. We modified the MVME167 serial driver to
120send test output to another serial port.
121
122Information provided by Charles-Antoine Gauthier (charles.gauthier@@iit.nrc.ca)
123and Jiri Gaisler (jgais@@ws.estec.esa.nl).
124
125
126@section omniORB
127
128omniORB is a GPL'ed CORBA which has been ported to RTEMS.  It is
129available from
130@ifset use-html
131(@href{http://www.uk.research.att.com/omniORB/omniORB.html,,,http://www.uk.research.att.com/omniORB/omniORB.html})
132@end ifset
133@ifclear use-html
134http://www.uk.research.att.com/omniORB/omniORB.html
135@end ifclear
136.
137
138For information on the RTEMS port of omniORB to RTEMS, see the following
139URL
140@ifset use-html
141(@href{http://www.connecttel.com/corba/rtems_omni.html,,,http://www.connecttel.com/corba/rtems_omni.html})
142@end ifset
143@ifclear use-html
144http://www.connecttel.com/corba/rtems_omni.html
145@end ifclear
146.
147
148C++ exceptions must work properly on your target for omniORB to work.
149
150The port of omniORB to RTEMS was done by Rosimildo DaSilva
151<rdasilva@@connecttel.com>. 
152
153@section TCL
154
155Tool Command Language.
156
157ditto
158
159@section ncurses
160
161Free version of curses.
162
163ditto
164
165
166@section zlib
167
168Free compression/decompression library.
169
170ditto
171
Note: See TracBrowser for help on using the repository browser.