With the advent of Autoconf, it's rarely necessary to have host definition machinery anymore.
Autoconf ÃâÇö°ú ÇÔ²², ´õÀÌ»ó È£½ºÆ® Á¤ÀÇ ÀåÄ¡¸¦ °¡Áú ÇÊ¿ä°¡ °ÅÀÇ ¾ø¾î Á³´Ù.
Most of GDB's host configuration support happens via Autoconf. New host-specific definitions should be rarely needed. GDB still uses the host-specific definitions and files listed below, but these mostly exist for historical reasons, and should eventually disappear.
´ëºÎºÐÀÇ GDB È£½ºÆ® ¼³Á¤»çÇ× Áö¿øÀº Autoconf¸¦ ÅëÇØ ÀϾÙ. »õ·Î¿î ƯÁ¤-È£½ºÆ® Á¤ÀÇ´Â °ÅÀÇ ÇÊ¿äÇÏÁö ¾Ê´Ù. GDB´Â ¿©ÀüÈ÷ È£½ºÆ® ÀÇÁ¸ÀûÀÎ Á¤ÀÇ¿Í ÆÄÀϵéÀ» »ç¿ëÇÏÁö¸¸, À̰͵éÀº ´ëºÎºÐ ÀüÅëÀûÀÎ ÀÌÀ¯¶§¹«¿¡ Á¸ÀçÇÏ¸ç °á±¹ »ç¶óÁ®¾ß ÇÒ °ÍµéÀÌ´Ù.
Several files control GDB's configuration for host systems:
¸î¸î ÆÄÀϵéÀº È£½ºÆ® ½Ã½ºÅÛÀ» À§ÇØ GDB ¼³Á¤»çÇ×À» Á¦¾îÇÑ´Ù:
XM_FILE=
xm-xyz.h
. You can also define CC
, SYSV_DEFINE
,
XM_CFLAGS
, XM_ADD_FILES
, XM_CLIBS
, XM_CDEPS
,
etc.; see `Makefile.in'.
¸Ó½Å xyz È£½ºÆ®À϶§ ÇÊ¿äÇÑ Makefile fragment¸¦ ÁöÁ¤ÇÑ´Ù.
Ưº°È÷, ÀÌ ¸®½ºÆ®´Â `XDEPFILES=...'¸¦ Á¤ÀÇÇÏ¿© ¸Ó½Å-ÀÇÁ¸ÀûÀÎ °´Ã¼ ÆÄÀÏÀ» ¿ä±¸ÇÑ´Ù. ¶ÇÇÑ
(`xm.h'´Â
È£½ºÆ®·Î½á ÀÌ ¸Ó½Å¿¡ ¿ä±¸ÇÏ´Â ±âŸ C Äڵ带 Æ÷ÇÔÇÑ´Ù.
´ëºÎºÐÀÇ ¸Ó½Å¿¡¼, ÀÌ°ÍÀº Á¸ÀçÇÏÁö ¾Ê´Â´Ù. ¸¸ÀÏ Á¸ÀçÇÑ´Ù¸é, `xyz-xdep.o'¸¦ `gdb/config/arch/xyz.mh'ÀÇ XM_FILE=xm-xyz.h
¸¦ Á¤ÀÇÇÏ¿©, È£½ºÆ® xyz¸¦ ±â¼úÇÑ Çì´õ ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù. ¿©·¯ºÐÀº CC
, SYSV_DEFINE
,
XM_CFLAGS
, XM_ADD_FILES
, XM_CLIBS
, XM_CDEPS µîÀ» Á¤ÀÇÇÒ¼ö ÀÖ´Ù; `Makefile.in'À» ÂüÁ¶Çضó.
configure
). Contains C
macro definitions describing the host system environment, such as byte
order, host C compiler and library.
configure
°¡ ¸¸µç ÀÌÆÄÀÏ¿¡ ´ëÇÑ ¸µÅ©ÀÌ´Ù.)
byte order, host C ÄÄÆÄÀÏ·¯¿Í ¶óÀ̺귯¸® °°Àº È£½ºÆ® ȯ°æÀ» ±â¼úÇÏ´Â C ¸ÅÅ©·Î Á¤ÀǸ¦ Æ÷ÇÔÇÑ´Ù.
XDEPFILES
line in
`gdb/config/arch/xyz.mh'.
XDEPFILES
¶óÀο¡ ³õ¾Æ¶ó.
There are some "generic" versions of routines that can be used by
various systems. These can be customized in various ways by macros
defined in your `xm-xyz.h' file. If these routines work for
the xyz host, you can just include the generic file's name (with
`.o', not `.c') in XDEPFILES
.
´Ù¾çÇÑ ½Ã½ºÅÛ¿¡¼ »ç¿ëµÉ¼ö ÀÖ´Â ÀϹÝÀûÀÎ ¹öÀüÀÇ ·çƾµéÀÌ ÀÖ´Ù.
À̰͵éÀº `xm-xyz.h' ÆÄÀÏ¿¡ Á¤ÀÇµÈ ¸ÅÅ©·Î¿¡ ÀÇÇØ ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î
Ä¿½ºÅ͸¶ÀÌ¡µÉ¼ö ÀÖ´Ù. ¸¸ÀÏ ÀÌµé ·çƾÀÌ xyz¿¡¼ ÀÛµ¿ÇÑ´Ù¸é, ¿©·¯ºÐÀº
XDEPFILES
ÀÇ ÀϹÝÀûÀÎ ÆÄÀÏ À̸§(`.o'Àº ¸Â°í, `.c'Àº ¾Æ´Ï´Ù)À» Æ÷ÇÔÇÑ´Ù.
Otherwise, if your machine needs custom support routines, you will need
to write routines that perform the same functions as the generic file.
Put them into xyz-xdep.c
, and put xyz-xdep.o
into XDEPFILES
.
±×·¸Áö ¾Ê°í, ¸¸ÀÏ ¸Ó½ÅÀÌ °í°´ Áö¿ø ·çƾÀ» ÇÊ¿ä·Î ÇÑ´Ù¸é, ¿©·¯ºÐÀº ÀÏ¹Ý ÆÄÀÏó·³ °°Àº
ÇÔ¼ö¸¦ ÀÌÇàÇÒ ·çƾÀ» ¾µ ÇÊ¿ä°¡ ÀÖ´Ù. ±×°ÍµéÀ» xyz-xdep.c
¿¡ ³õ°í,
xyz-xdep.o
¸¦ XDEPFILES
¿¡ ³õ¾Æ¶ó.
SER_HARDWIRE
; override this
variable in the `.mh' file to avoid it.
ÀÌ°ÍÀº Unix ½Ã½ºÅÛÀ» À§ÇÑ ½Ã¸®¾ó ¶óÀÎ Áö¿øÀ» Æ÷ÇÔÇÑ´Ù. ÀÌ°ÍÀº makefile º¯¼ö SER_HARDWIRE
¸¦ ÅëÇØ Ç×»ó Æ÷ÇԵȴÙ; ÀÌ º¯¼ö¸¦ `.mh' ÆÄÀÏ¿¡ ¿À¹öÆÄÀ̵åÇضó.
ÀÌ°ÍÀº DJGPP(a.k.a. GO32) ½ÇÇà ȯ°æÀ» »ç¿ëÇÏ´Â, DOS¿¡¼ ÀÛµ¿ÇÏ´Â 32-ºñÆ® ÇÁ·Î±×·¥À» Áö¿øÇÏ´Â ½Ã¸®¾ó ¶óÀÎÀ» Æ÷ÇÔÇÑ´Ù.
ÀÌ°ÍÀº ¼ÒÄÏÀ» »ç¿ëÇÏ´Â ÀÏ¹Ý TCP Áö¿øÀ» Æ÷ÇÔÇÑ´Ù.
When GDB is configured and compiled, various macros are defined or left undefined, to control compilation based on the attributes of the host system. These macros and their meanings (or if the meaning is not documented here, then one of the source files where they are used is indicated) are:
GDB°¡ ¼³Á¤µÇ°í ÄÄÆÄÀÏ µÉ¶§, ¸¹Àº ¸ÅÅ©·Î°¡ È£½ºÆ® ½Ã½ºÅÛÀÇ Æ¯¼º¿¡ ±â¹ÝÇÏ¿© ÄÄÆÄÀÏÀ» Á¦¾îÇϱâÀ§ÇØ Á¤Àǵǰųª ¹ÌÁ¤ÀǵÈä·Î ³²¾Æ Àִ´Ù. ÀÌµé ¸ÅÅ©·Î¿Í ¶æÇÏ´Â ÀǹÌ(¶Ç´Â ¸¸ÀÏ Àǹ̰¡ ¿©°Å¿¡¼ ¹®¼ÈµÇÁö ¾Ê¾Ò´Ù¸é, »ç¿ëÇÒ¼ö ÀÖ´Â ¼Ò½º ÆÄÀÏÁß Çϳª¸¦ °¡¸®Å²´Ù.)´Â:
GDBINIT_FILENAME
GDB ÃʱâÈ ÆÄÀÏÀÇ ±âº» À̸§(º¸Åë `.gdbinit')
MEM_FNS_DECLARED
memcpy
and memset
. Define this to avoid conflicts between
the native include files and the declarations in `defs.h'.
¸¸ÀÏ memcpy
¿Í memset
ÀÇ Á¤ÀǸ¦ Æ÷ÇÔÇÑ´Ù¸é È£½ºÆ® ¼³Á¤ ÆÄÀÏÀº
ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ¿ø ÀÎŬ·çµå ÆÄÀÏ°ú `defs.h'³» ¼±¾ð »çÀÌÀÇ Ãæµ¹À» ÇÇÇϱâ À§ÇØ
ÀÌ°ÍÀ» Á¤ÀÇÇضó.
NO_STD_REGS
ÀÌ ¸ÅÅ©·Î´Â Á¦°ÅµÇ¾ú´Ù.
NO_SYS_FILE
<sys/file.h>
.
¸¸ÀÏ ½Ã½ºÅÛÀÌ <sys/file.h>
¸¦ °¡Áö°í ÀÖÁö ¾Ê´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇضó.
SIGWINCH_HANDLER
SIGWINCH
, you can define this to be the name
of a function to be called if SIGWINCH
is received.
¸¸ÀÏ È£½ºÆ®°¡ SIGWINCH
¸¦ Á¤ÀÇÇÑ´Ù¸é, ¿©·¯ºÐÀº SIGWINCH
¸¦
¹ÞÀ» °æ¿ì È£ÃâµÉ ÇÔ¼ö À̸§À¸·Î ÀÌ°ÍÀ» Á¤ÀÇÇÒ¼ö ÀÖ´Ù.
SIGWINCH_HANDLER_BODY
SIGWINCH_HANDLER
.
SIGWINCH_HANDLER
È®ÀåÀ¸·Î ¸í¸íµÈ ÇÔ¼ö¸¦ Á¤ÀÇÇÒ ÄÚµå·Î È®ÀåÇϱâ À§ÇØ
ÀÌ°ÍÀ» Á¤ÀÇÇضó.
ALIGN_STACK_ON_STARTUP
tgetent
if the stack happens not to be longword-aligned when
main
is called. This is a rare situation, but is known to occur
on several different types of systems.
¸¸ÀÏ ½Ã½ºÅÛÀÌ Á¤·ÄÀ̶ó¸é ÀÌ°ÍÀ» Á¤ÀÇÇÏ¸ç ¸¸ÀÏ main
ÀÌ È£ÃâµÇ¾úÀ»¶§ ½ºÅÃÀÌ
longword-Á¤·ÄÀÌ µÇÁö ¾Ê¾Ò´Ù¸é tgetent
¿¡¼ Å©·¡½¬°¡ µÉ°ÍÀÌ´Ù.
CRLF_SOURCE_FILES
\r\n
rather than \n
as a
line terminator. This will cause source file listings to omit \r
characters when printing and it will allow \r\n
line endings of files
which are "sourced" by gdb. It must be possible to open files in binary
mode using O_BINARY
or, for fopen, "rb"
.
¸¸ÀÏ È£½ºÆ® ÆÄÀÏÀÌ ¶óÀÎ Á¾°áÀÚ·Î \n
¸»°í \r\n
À» »ç¿ëÇÑ´Ù¸é
ÀÌ°ÍÀ» Á¤ÀÇÇضó. ÀÌ°ÍÀº Ãâ·Â½Ã \r
À» »ý·«Çϵµ·Ï ¼Ò½º ÆÄÀÏ ¸®½ºÆ®¸¦ ¾ß±âÇϸç
GDB°¡ "sourced"ÇÏ´Â ÆÄÀÏÀÇ ¶óÀγ¡¿¡ \r\n
À» Çã¿ëÇÑ´Ù.
O_BINARY
³ª fopenÀ» À§ÇØ "rb"
¸¦ »ç¿ëÇÏ´Â ¹ÙÀ̳ʸ® ¸ðµå¿¡¼
ÆÄÀÏÀ» ¿©´Â°ÍÀÌ °¡´ÉÇØ¾ß ÇÑ´Ù.
DEFAULT_PROMPT
"(gdb) "
).
ÇÁ·ÒÇÁÆ® ¹®ÀÚ¿ÀÇ ±âº» °ª(º¸Åë "(gdb) "
)
DEV_TTY
"/dev/tty"
.
ÀϹÝÀûÀÎ TTY ÀåÄ¡ÀÇ À̸§, ±âº»Àº "/dev/tty"
.
FCLOSE_PROVIDED
fclose
in the headers included
in defs.h
. This isn't needed unless your compiler is unusually
anal.
¸¸ÀÏ ½Ã½ºÅÛÀÌ defs.h
¿¡ Æ÷ÇÔµÈ Çì´õ¾È¿¡ fclose
¸¦ ¼±¾ðÇÑ´Ù¸é
ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ¸¸ÀÏ ÄÄÆÄÀÏ·¯°¡ ƯÀÌÇÏÁö ¾Ê´Ù¸é ÇÊ¿äÇÏÁö ¾Ê´Ù.
FOPEN_RB
¸¸ÀÏ ¹ÙÀ̳ʸ® ÆÄÀÏÀÌ ÅؽºÆ® ÆÄÀÏ°ú °°Àº ¹æ¹ýÀ¸·Î ¿·ÁÁø´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
GETENV_PROVIDED
getenv
in its headers included
in defs.h
. This isn't needed unless your compiler is unusually
anal.
¸¸ÀÏ ½Ã½ºÅÛÀÌ defs.h
¿¡ Æ÷ÇÔµÈ Çì´õ ¾È¿¡ getenv
¸¦ ¼±¾ðÇÑ´Ù¸é
ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ¸¸ÀÏ ÄÄÆÄÀÏ·¯°¡ ƯÀÌÇÏÁö ¾Ê´Ù¸é ÇÊ¿äÇÏÁö ¾Ê´Ù.
HAVE_MMAP
mmap
for reading symbol
tables. For some machines this allows for sharing and quick updates.
¸î¸î °æ¿ì¿¡, ½Éº¼ Å×À̺íÀ» Àбâ À§ÇØ ½Ã½ºÅÛ ÄÝ mmap
¸¦ »ç¿ëÇÑ´Ù.
¸î¸î ¸Ó½Å¿¡¼, ÀÌ°ÍÀº °øÀ¯¿Í ºü¸¥ °»½ÅÀ» Çã¿ëÇÑ´Ù.
HAVE_SIGSETMASK
sigsetmask
. Currently, this is only true of the RS/6000.
¸¸ÀÏ È£½ºÆ® ½Ã½ºÅÛÀÌ job controlÀ» °¡Áø´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ±×·¯³ª sigsetmask
À» Á¤ÀÇÇÏÁö´Â ¾Ê´Â´Ù. ÇöÀç, ÀÌ°ÍÀº RS/6000¿¡¼¸¸ ¸Â´Ù.
HAVE_TERMIO
termio.h
.
¸¸ÀÏ È£½ºÆ® ½Ã½ºÅÛÀÌ termio.h
¸¦ °¡Áø´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
HOST_BYTE_ORDER
BIG_ENDIAN
or LITTLE_ENDIAN
.
È£½ºÆ®³» ¹ÙÀÌÆ® ¼ø¼. ÀÌ°ÍÀº BIG_ENDIAN
³ª LITTLE_ENDIAN
Áß Çϳª·Î Á¤ÀǵǾî¾ß ÇÑ´Ù.
INT_MAX
INT_MIN
LONG_MAX
UINT_MAX
ULONG_MAX
ISATTY
ÀÌ¿ëÇÒ¼ö ¾ø´Ù¸é, isatty·Î ´ëüÇضó.
LONGEST
long long
or long
, depending on
CC_HAS_LONG_LONG
.
È£½ºÆ®¿¡¼ ÀÌ¿ëÇÒ¼ö ÀÖ´Â °¡Àå ±ä integer ŸÀÔÀÌ´Ù.
Á¤ÀǵǾî ÀÖÁö ¾Ê´Ù¸é, CC_HAS_LONG_LONG
¿¡ ÀÇÁ¸ÇÏ¿© long long
³ª
long
ÀÌ ±âº»ÀÌ´Ù.
CC_HAS_LONG_LONG
long long
. This is set
by the configure
script.
¸¸ÀÏ È£½ºÆ® C ÄÄÆÄÀÏ·¯°¡ long long
À» Áö¿øÇÑ´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
ÀÌ°ÍÀº configure
½ºÅ©¸³Æ®·Î ¼³Á¤µÈ´Ù.
PRINTF_HAS_LONG_LONG
ll
. This is set by the
configure
script.
¸¸ÀÏ È£½ºÆ®°¡ printf Çü½Ä º¯È¯ ÁöÁ¤ÀÚ ll
¸¦ ÅëÇØ long long intergerÀÇ Ãâ·ÂÀ»
Çڵ鸵ÇÒ¼ö ÀÖ´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ÀÌ°ÍÀº configure
½ºÅ©¸³Æ®·Î ¼³Á¤µÈ´Ù.
HAVE_LONG_DOUBLE
long double
. This is
set by the configure
script.
¸¸ÀÏ È£½ºÆ® C ÄÄÆÄÀÏ·¯°¡ long double
À» Áö¿øÇÑ´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
ÀÌ°ÍÀº configure
½ºÅ©¸³Æ®·Î ¼³Á¤µÈ´Ù.
PRINTF_HAS_LONG_DOUBLE
Lg
. This is
set by the configure
script.
¸¸ÀÏ È£½ºÆ®°¡ printf Çü½Ä º¯È¯ ÁöÁ¤ÀÚ Lg
¸¦ ÅëÇØ long double ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ
Ãâ·ÂÀ» ó¸®ÇÒ¼ö ÀÖ´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ÀÌ°ÍÀº configure
½ºÅ©¸³Æ®·Î ¼³Á¤µÈ´Ù.
SCANF_HAS_LONG_DOUBLE
Lg
. This is set by the configure
script.
¸¸ÀÏ È£½ºÆ®°¡ scanf Çü½Ä º¯È¯ ÁöÁ¤ÀÚ Lg
¸¦ ÅëÇØ long double ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ
ÆĽÌÀ» ó¸®ÇÒ¼ö ÀÖ´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù. ÀÌ°ÍÀº configure
½ºÅ©¸³Æ®·Î ¼³Á¤µÈ´Ù.
LSEEK_NOT_LINEAR
lseek (n)
does not necessarily move to byte number
n
in the file. This is only used when reading source files. It
is normally faster to define CRLF_SOURCE_FILES
when possible.
¸¸ÀÏ lseek (n)
°¡ ÆÄÀÏÀÇ ¹ÙÀÌÆ® ¼ö n
¸¦ ¿Å±æ ÇÊ¿ä°¡ ¾ø´Ù¸é ÀÌ°ÍÀ»
Á¤ÀÇÇÑ´Ù. ÀÌ°ÍÀº ¼Ò½º ÆÄÀÏÀ» ÀÐÀ»¶§ »ç¿ëµÈ´Ù. °¡´ÉÇÏ´Ù¸é CRLF_SOURCE_FILES
¸¦
Á¤ÀÇÇϴ°ÍÀÌ °¡Àå ºü¸£´Ù.
L_SET
lseek
(or, most commonly,
bfd_seek
). FIXME, should be replaced by SEEK_SET instead,
which is the POSIX equivalent.
ÀÌ ¸ÅÅ©·Î´Â lseek
¿¡ ´ëÇÑ ÀÎÀÚ·Î½á »ç¿ëµÈ´Ù.(¶Ç´Â °¡Àå ÀϹÝÀûÀ¸·Î, bfd_seek
). FIXME´Â POSIX¿Í µ¿µîÇÑ SEEK_SET¿¡ ÀÇÇØ ´ëüµÇ¾î¾ß ÇÑ´Ù.
MALLOC_INCOMPATIBLE
malloc
differs from the
ANSI definition.
¸¸ÀÏ malloc
À» À§ÇÑ ½Ã½ºÅÛ ¿øÇüÀÌ ANSI Á¤ÀÇ¿Í ´Ù¸£´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
MMAP_BASE_ADDRESS
HAVE_MMAPÀ» »ç¿ëÇÒ¶§, óÀ½ ¸ÅÇÎÀº ÀÌ ÁÖ¼Ò·Î °¡¾ß ÇÑ´Ù.
MMAP_INCREMENT
HAVE_MMAPÀ» »ç¿ëÇÒ¶§, ÀÌ°ÍÀº ¸ÅÇλçÀÌÀÇ Áõ°¡ÀÌ´Ù.
NEED_POSIX_SETPGID
setpgid
to determine
whether job control is available.
job controlÀ» ÀÌ¿ëÇÒ¼ö ÀÖ´ÂÁö¸¦ °áÁ¤Çϱâ À§ÇØ POSIX ¹öÀüÀÇ setpgid
À»
»ç¿ëÇϵµ·Ï ÀÌ°ÍÀ» Á¤ÀÇÇضó.
NORETURN
volatile
,
that can be used in both the declaration and definition of functions to
indicate that they never return. The default is already set correctly
if compiling with GCC. This will almost never need to be defined.
¸¸ÀÏ Á¤ÀǵǾú´Ù¸é, ÀÌ°ÍÀº volatile
°°ÀÌ Çϳª³ª ±× ÀÌ»óÀÇ ÅäÅ«À̾î¾ß Çϸç,
¼±¾ð°ú °áÄÚ ¸®ÅϵÇÁö ¾Ê´Â´Ù´Â °ÍÀ» °¡¸®Å°´Â ÇÔ¼öÁ¤ÀÇ¿¡¼ »ç¿ëµÉ¼ö ÀÖ´Ù.
±âº»Àº ¸¸ÀÏ GCC¿Í ÇÔ²² ÄÄÆÄÀÏ µÈ´Ù¸é Á¤È®È÷ ¼³Á¤µÈ´Ù.
ÀÌ°ÍÀº Á¤ÀÇµÉ ÇÊ¿ä°¡ °ÅÀÇ ¾øÀ» °ÍÀÌ´Ù.
ATTR_NORETURN
__attribute__ ((noreturn))
, that can be used in the declarations
of functions to indicate that they never return. The default is already
set correctly if compiling with GCC. This will almost never need to be
defined.
¸¸ÀÏ Á¤ÀǵǾú´Ù¸é, ÀÌ°ÍÀº __attribute__ ((noreturn))
°°ÀÌ Çϳª³ª ±× ÀÌ»óÀÇ
ÅäÅ«À̾î¾ß Çϸç, °áÄÚ ¸®ÅϵÇÁö ¾Ê´Â´Ù´Â °ÍÀ» °¡¸®Å°´Â ÇÔ¼öÀÇ ¼±¾ð¿¡¼ »ç¿ëµÉ¼ö ÀÖ´Ù.
±âº»Àº ¸¸ÀÏ GCC¿Í ÇÔ²² ÄÄÆÄÀÏ µÈ´Ù¸é Á¤È®È÷ ¼³Á¤µÈ´Ù.
ÀÌ°ÍÀº Á¤ÀÇµÉ ÇÊ¿ä°¡ °ÅÀÇ ¾øÀ» °ÍÀÌ´Ù.
USE_GENERIC_DUMMY_FRAMES
blockframe.c
for more information.
¸¸ÀÏ Å¸°ÙÀÌ ÀϹÝÀûÀÎ ³»ºÎ ÇÔ¼ö È£Ãâ Äڵ忡¼ »ç¿ëµÈ´Ù¸é ÀÌ°ÍÀ» 1·Î Á¤ÀÇÇÑ´Ù.
´õ ¸¹Àº Á¤º¸¸¦ À§ÇØ blockframe.c
¸¦ ÂüÁ¶Çضó.
USE_MMALLOC
mmalloc
library for memory allocation
for symbol reading if this symbol is defined. Be careful defining it
since there are systems on which mmalloc
does not work for some
reason. One example is the DECstation, where its RPC library can't
cope with our redefinition of malloc
to call mmalloc
.
When defining USE_MMALLOC
, you will also have to set
MMALLOC
in the Makefile, to point to the mmalloc
library. This
define is set when you configure with `--with-mmalloc'.
GDB´Â ¸¸ÀÏ ÀÌ ½Éº¼ Á¤ÀǵǾî ÀÖ´Ù¸é ½Éº¼À» Àбâ À§ÇØ ¸Þ¸ð¸® ÇÒ´çÀ» À§ÇÑ mmalloc
¶óÀ̺귯¸®¸¦ »ç¿ëÇÑ´Ù. Á¤ÀÇÇϴ°Ϳ¡ ÁÖÀÇÇØ¾ß ÇÑ´Ù. ¿Ö³ÄÇϸé mmalloc
ÀÌ
¸î¸î ÀÌÀ¯·Î ÀÛµ¿ÇÏÁö ¾Ê´Â ½Ã½ºÅÛÀÌ Àֱ⠶§¹®ÀÌ´Ù. ÇÑ ¿¹°¡ DECstationÀ̸ç, ÀÌ ¸Ó½ÅÀÇ RPC ¶óÀ̺귯¸®´Â malloc
ÀÇ Àç Á¤ÀǸ¦ mmalloc
È£ÃâÀ» À§ÇØ º¹»çÇÒ¼ö ¾ø´Ù.
USE_MMALLOC
À» Á¤ÀÇÇÒ¶§, ¿©·¯ºÐÀº mmalloc
¶óÀ̺귯¸®¸¦ °¡¸®Å°µµ·Ï
Çϱâ À§ÇØ Makefile¿¡ MMALLOC
À» ¼³Á¤ÇØ¾ß ÇÑ´Ù.
ÀÌ Á¤ÀÇ´Â ¿©·¯ºÐÀÌ `--with-mmalloc'·Î ¼³Á¤ÇÒ¶§ ¼³Á¤µÈ´Ù.
NO_MMCHECK
mmalloc
, but don't want the overhead
of checking the heap with mmcheck
. Note that on some systems,
the C runtime makes calls to malloc
prior to calling main
, and if
free
is ever called with these pointers after calling
mmcheck
to enable checking, a memory corruption abort is certain
to occur. These systems can still use mmalloc
, but must define
NO_MMCHECK
.
¸¸ÀÏ ¿©·¯ºÐÀÌ mmalloc
À» »ç¿ëÇÏÁö¸¸, mmcheck
·Î heapÀ» °Ë»çÇÏ´Â ¿À¹öÇìµå´Â ¿øÇÏÁö ¾Ê´Â´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇضó. ¸î¸î ½Ã½ºÅÛ¿¡¼, C runtimeÀº main
È£Ãâ Àü¿¡ malloc
À» È£ÃâÇÏ°í, ¸¸ÀÏ free
°¡ °Ë»ç°¡ °¡´ÉÇϵµ·Ï
mmcheck
È£ÃâÈÄ À̵é Æ÷ÀÎÅÍ¿Í °°ÀÌ È£ÃâµÈ´Ù¸é, ¸Þ¸ð¸® ¿À¿°ÀÌ È®½ÇÈ÷ ¹ß»ýÇÑ´Ù.
ÀÌµé ½Ã½ºÅÛÀº ¿©ÀüÈ÷ mmalloc
À» »ç¿ëÇÏÁö¸¸ NO_MMCHECK
À» Á¤ÀÇ
ÇØ¾ß ÇÑ´Ù.
MMCHECK_FORCE
mmcheck
being called, but that memory is never freed so we don't
have to worry about it triggering a memory corruption abort. The
default is 0, which means that mmcheck
will only install the heap
checking functions if there has not yet been any memory allocation
calls, and if it fails to install the functions, GDB will issue a
warning. This is currently defined if you configure using
`--with-mmalloc'.
¸¸ÀÏ C runtimeÀÌ mmcheck
È£Ãâ¿¡ ¾Õ¼ ¸Þ¸ð¸®¸¦ ÇÒ´çÇÑ´Ù¸é, ÀÌ°ÍÀ» 1·Î
Á¤ÀÇÇضó. ±×·¯³ª ÀÌ ¸Þ¸ð¸®´Â freeµÇÁö ¾Ê¾Æ¼ ¸Þ¸ð¸® ¿À¿°ÀÌ ¹ß»ýÇϴ°Ϳ¡ °ÆÁ¤ÇÒ
ÇÊ¿ä°¡ ¾ø´Ù. ±âº»Àº 0À̸ç, ÀÌ°ÍÀº mmcheck
Àº ¸¸ÀÏ ´õÀÌ»óÀÇ ¸Þ¸ð¸® ÇÒ´ç È£ÃâÀÌ
¾ø´Ù¸é ÇÔ¼ö¸¦ °Ë»çÇϱâ À§ÇØ heapÀ» ÀνºÅçÇѴٴ°ÍÀ» ÀǹÌÇϸç, ¸¸ÀÏ ÇÔ¼ö ÀνºÅçÀÌ ½ÇÆÐ
ÇÑ´Ù¸é, GDB´Â °æ°í¸¦ º¸³½´Ù. ¸¸ÀÏ ¿©·¯ºÐÀÌ `--with-mmalloc'¸¦ »ç¿ëÇÏ¿© ¼³Á¤
ÇÑ´Ù¸é Á¤ÀǵȴÙ.
NO_SIGINTERRUPT
siginterrupt
is not available.
ÀÌ°ÍÀº siginterrupt
À» ÀÌ¿ëÇÒ¼ö ¾ø´Ù´Â°ÍÀ» °¡¸®Å°µµ·Ï Á¤ÀÇÇÑ´Ù.
R_OK
¸¸ÀÏ ÀÌ°ÍÀÌ ½Ã½ºÅÛ Çì´õ ÆÄÀÏ¿¡ ¾ø´Ù¸é Á¤ÀÇÇÑ´Ù. (ÀüÇüÀûÀ¸·Î, `unistd.h')
SEEK_CUR
SEEK_SET
lseek
, if not already
defined.
¸¸ÀÏ ÀÌ¹Ì Á¤ÀǵǾî ÀÖÁö ¾Ê´Ù¸é, ÀÌ°ÍÀ» ½Ã½ºÅÛ lseek
À» À§ÇÑ Àû´çÇÑ °ªÀ¸·Î Á¤ÀÇÇÑ´Ù.
STOP_SIGNAL
SIGTSTP
. (Only redefined for the Convex.)
GDB¸¦ ¸ØÃß°Ô ÇÏ´Â ½ÅÈ£ÀÌ´Ù. ±âº»Àº SIGTSTP
. (Convex¿¡¼¸¸ ´Ù½Ã Á¤ÀǵȴÙ.)
USE_O_NOCTTY
O_NOCTTY
flag. (FIXME: This should be a native-only flag, but `inflow.c' is
always linked in.)
¸¸ÀÏ ³»ºÎ tty°¡ O_NOCTTY
Ç÷¡±×¿Í ÇÔ²² ¿·ÁÁ³´Ù¸é ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
(FIXME:native-only flagÀ̾î¾ß Çϸç, `inflow.c'´Â Ç×»ó ¸µÅ©µÈ´Ù.)
USG
System V(SVR4 ÀÌÀü) include fileµéÀÌ »ç¿ëµÈ´Ù´Â°ÍÀ» ÀǹÌÇÑ´Ù. (FIXME: ÀÌ ½Éº¼Àº `infrun.c', `regex.c', `remote-nindy.c', ±×¸®°í ±× ¼ø°£¿¡ ´Ù¸¥ °ÍÀ» À§ÇØ `utils.c'¿¡¼ È®´ëµÈ´Ù.)
lint
lint
in some situations.
¸î¸î »óȲ¿¡¼ lint
À» µµ¿ÍÁÖ±â À§ÇØ ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
volatile
__volatile__
or
/**/
.
__volatile__
³ª /**/
ÀÇ ±âº»°ªÀ» ¿À¹ö¶óÀ̵åÇϵµ·Ï ÀÌ°ÍÀ» Á¤ÀÇÇÑ´Ù.
Go to the first, previous, next, last section, table of contents.