Index

Symbols

#define 21
#include files 21, 120, 129
.bss 39- 40, 42
.data 42
.text 40
.text section 41
__start 37
_bss_start 40, 42
_DYNAMIC, for shared dynamic libraries 41
_end 40, 42

A

a.out 28
ABI (Application Binary Interface) 90, 104
embedded 113
see also EABI (embedded ABI)
address 22, 104, 125, 130
accumulator 104
memory (virtual, load) 23
run-time 22
aliased pseudo registers 130
allocatable sections 23
ANSI C runtime library 18
API 90
ar 19
ARC (Argonaut RISC Chip) 104
architecture 104
archive index 19
argv 39
array 104
ASCII text 34
ash 105
assembler 19- 20, 27, 105, 118

B

BDM (Background Debugging Mode) 105
BFD (Binary File Descriptor) 106
bin 10
binary 19, 22, 128
file 115
file descriptor 106
programs, building, installing 66
utilities 19, 28
BIOS 106
bit 105
blocks 22
BogoMIPS 107
boot 107
BOOTP 107
Bourne-compatible shells, setting PATH 10
breakpoint 26, 57, 107
BSD (Berkeley Software Distribution) 107, 127
buffer 107
buffer.h 25
bug monitor 40
build and installation directories 68
build directory 5
build, defined 108
built-in trap handler 40
bus 104

C

C
compiler 18, 109
library 29
library functions, new 31
math subroutine library 18
preprocessor 18
Programming Language, The 122
runtime environment 34
shell, setting PATH 10
subroutine library 34
C preprocessor
conditional compilation 21
header files, including 21
line control 21
macro expansion 21
C++
class library 18
constructors 21
iostreams library 18
naming convention ( g++) 20
symbol name deciphering utility 19
symbol names 19
c++filt 19
cache 131
call stack 135
canonical name 6
canonical, defined 108
changes, requesting 15
classes 109, 124, 128, 136
COFF (Common Object File Format) 109, 135
command.h 25
compiler 6, 18, 20
conditional use 21
cross compilation, defined 108
defined 118
EGCS 113
Java 122
lexical, defined 123
lexical, scoping 127
previous release issues 96
rebuilding tools 67
source code 109
trampolines 138
translator for C 109
concatenation 37, 109
conditional compilation 21
config.guess 5
configure 68
configuring 4- 6, 8- 9, 23- 25, 110
constant variables 139
constructor and destructor tables for G++ 40- 42
CONSTRUCTORS 42
contacting Red Hat 2, 15
Copying and Copying.lib files 75
copyleft, defined 110
cpp 20
CREATE_OBJECT_SYMBOLS 41
crt0 (C RunTime 0) file 37, 41
crt0.s 36
CSE(Common Sub-expression Elimination) 110
csh 110
CVS (Concurrrent Version System) 111
Cygwin 29, 43- 53, 68, 114
.dll files, building example 48
binary linking 43
CYGWIN environment variable 50
debugger 49
directory structure 43
DLLs 30
dlltool 30
environment variables 50
gcc 30, 49
global symbols 30
HOME environment variable 51
LD_LIBRARY_PATH environment variable 51
MAKE_MODE environment variable 50
Makefile 49
mount 44
mount table 44
ntsec 52
options, turned off (" no ") 51
PATH environment variable 50
rebuilding 67
seteuid 44
setuid 44
storing inode data 51, 53
TERM environment variable 51
Windows resource file 48
windres 48
CYGWIN environment variable 50

D

-d, for assembler 28
daemon 111
data section 23
dbx 111
debugging 18, 105
Cygwin development 51
definition 111
formats 111
function call 135
GUI 18, 54
information, getting 26
low-level 34
stack frame 135
tracepoint, defined 137
variables 135
watchpoint, defined 139
defs.h 25
destructor tables 40
DevKit
see Embedded DevKit
DHCP (Dynamic Host Configuration Protocol) 112
diff, diff3, sdiff 18
-disassemble 28
diskless 112
dlltool 30
documentation 2- 3
dynamic libraries 34, 41

E

EABI (Embedded Application Binary Interface) 113
ECOFF (Extended COFF) 113
see also COFF (Common Object File Format)
eCos (Embedded Configurable Operating System) 113
editor 24- 25, 139
EEPROM (Electrically Erasable Read-Only Memory) 113
see also diskless, PROM (Programmable Read-Only Memory)
EGCS 113
EL/IX 114
see also Embedded DevKit
ELF (Extended Linker Format) 113, 135
Emacs 107
embedded
development, definition 33
Embedded DevKit 112, 114
enhancements 89
environment variable 115
environment, defined 114
EPROM (Erasable Read-Only Memory) 115
see also diskless, PROM (Programmable Read-Only Memory)
Ethernet
debugging, connection, defined 118
defined 115
using 112
executable 22, 28
exit 39

F

filesystem 116
virtual 139
filetype 111
floating point 127
frame 117
FSF (Free Software Foundation)
address 76
documentation 2
license, using 80
function
defined 117
nested 127

G

g++ (GNU C++ compiler) 20
gas see assembler
gcc (GNU C compiler collection) 20, 26, 30, 43, 49, 96
gcov, for testing performance 18
GCSE (Global Common Sub-expression Elimination) 118
gdb 18, 54
gdb see debugging
gdbserver 118
gdbtk see Insight
getpd(), for returning value 34
glibc 118
global
names 38
symbols 38
variables 23, 139
GNOME (GNU Network Object Model Environment) 119
GNU, defined 119
GPL (General Public License) 75- 80, 123
copyleft, defined 110
licensing terms 75
GROUP, for loading 41

H

header files 21
heterogeneous, defined 64, 119
HOME for directory orientation 51
host, defined 120
HTML 2
HTTPd (Hypertext Transfer Protocol daemon) 120

I

IDE (Integrated Development Environment), defined 120
identifier 21
-inbyte 34
including files 21
inetrd 120
init 121
initialization of files, settings 10
input section 22
Insight 54-61, 118
breakpoints, information balloon 60
breakpoints, setting 56-58
buttons 54
jumps 55
local variables 56
menus 54
search 54
source file, debugging 54
starting 54
variables 58
installation 7, 68
command-line 10
problems 15
UNIX 8
Windows 12
isatty(), for checking for a terminal device 34

J

Java .class files 118
Java Runtime Environment 122
Java Virtual Machine 122
jvgenmain 122
JVM 122
jv-scan 122

K

K & R 122
kernels 122
Kernighan, Brian 122
kill(), for exiting 34
Korn shell 10

L

labels 136
ld, the GNU linker 20, 22
leaf functions, defined 123
LGPL (Lesser General Public License) 81- 87, 123
libc 18, 29
libg++ 18
libgcc.a 20
libio 18
libm 18, 29
libraries 18, 21
defined 123
glibc 118
libc 128
libelix 124
libm 128
linking, configuring 133
newlib 128
shared 134 - 135
licenses 75 - 88, 123
GPL 75- 80
LGPL 81- 87
Tcl/Tk 88
LILO 124
line control 22
linker 18, 40
linker script, defined 22
links (symbolic), setting PATH 10
LMA (load memory address) 23
loadable 22
loader 36
local variables 58

M

m68k-coff configuration 40
machine registers 125
macro expansion 21
macros 37
main 36, 38
main() 20, 39
main.c 25
make, for reconfiguring 18, 125
Makefile 5, 108
makefile, described 24
malloc() 39
math library 29
MEMORY 41
memory 38, 40
mon68k 41
monitors 41
mount 44
multiple-host environment 66

N

name-mangling 104
names 68
network boot 127
networking 107
New Case - Select Product ID page 15
newlib 29, 34, 128
NFS (Network File System) 128
nm 19, 40
-nostlib 20
ntsec 52

O

objcopy 19, 28
objdump 19, 23, 28
object
code archives 19
object file 19, 22, 24, 124, 128
assembler, working with 27
C library, linking 21
format 5, 22
information 19
symbol tables 19, 135
object-oriented programming 140
-outbyte 34
output section 22
overflow 107, 129

P

parser 106
Pascal 109
patch 18, 71, 129
PATH, setting 10
porting layer for UNIX applications 29
PowerPC 129
prefix 38, 116
-prefix-addresses 29
preprocessing 22
problems 15, 89
Add Notes page 16
Close Case link 16
GNUPro Support Request button 15
Help page 16
Profile page 16
Query Case page 16
procedures 136
program, object-oriented 140
PROM (Programmable Read-Only Memory) 28, 115, 130
pseudo-ops 130
ptrace 130

R

RAM 131
Disk 120, 131
space 41
variable 42
ranlib 19
rc file 131
rebuilding 63- 71
Windows 67
recompiling 24
reconfiguration 5
Red Hat, contacting 2, 15
RedBoot 30, 53, 131
reentrancy, defined 131
registers 104, 131, 139
machine 125
names 38
pseudo 130
temporary 137
relative path 129
relinking 25
relocation 22
remote
rsh (remote shell protocol) 132
systems 137
target 132
RISC 104
Ritchie, Dennis 122
ROM (Read-Only Memory) 107, 130
ROM monitor 26, 28, 38, 40
rom68k 40- 41
root 129, 132
routines 34
RPM (Red Hat Package Manager), defined 132
rule 24

S

sbrk() 40
scope 123, 133
scripts, shell 134
SEARCH_DIR, for specifying paths 41
searches 15
sections 22, 133
.data 42
.text 41
main 40
names 40
sizes 19
shell 10, 105, 110
size 19
source line control 21
stack
defined 135, 139
space 38
start 39
STARTFILE_SPEC 40
static variable 23
stdout 21
strip 19
stub 34, 135
sub-expressions 116
sub-routines (stubs) 26, 34, 135
super-user access 10
swap 136
SYM 39
symbol 19, 23
defined 136
stabs 135
table 23, 135
system, local/remote 137

T

target environment 114
target environment, defined 136
Tcl/Tk 88, 112, 136
TCP/IP (Transmission Control Protocol/Internet Protocol) 107, 117, 136
see also IP (Internet Protocol)
tcsh 137
testing 18
TFTP (Trivial File Transfer Protocol) 137
threads 127, 137
toolchain, defined 137
Torvalds, Linus 124
total sizes 19
trap handler 40

U

UNIX
applications, porting to Windows 29
URL 2
utilities 19

V

variables 136
constant 139
default values 40
environment 115
global 139
instance 121, 139
local 124
void 139
vi 139
VMA (virtual memory address) 23
void variables 139

W

warnings 15, 89
watchpoint 107
Web Support site 15
Web support site 2, 15
widget 136, 140
Win32 API calls 43
Windows
Cygwin 29, 43- 53
rebuilding 67

X

x86, definition 140
XCOFF (extended COFF) 140