´ÙÀ½ À§·Î ÀÌÀü ¸ñÂ÷ ¸®´ª½º ÇÁ·Î±×·¡¸Ó¸¦ À§ÇÑ °¡À̵å

10.5 ȣȯ¼ºÀÖ´Â Á¶°ÇºÎ ÄÄÆÄÀÏ (Portable conditional compilation)

¸®´ª½º·Î Æ÷ÆÃÇϱâ À§ÇØ Á¸ÀçÇÏ´Â Äڵ带 ¼öÁ¤ÇؾßÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, Linux-specific ÄÚµå ºÎºÐÀ» µÑ·¯½Î±âÀ§ÇØ ifdef...endif ½ÖÀ» »ç¿ëÇÒ ÇÊ¿ä°¡ ÀÖÀ»·±Áö ¸ð¸¥´Ù. -- ¶Ç´Â, ½ÇÁ¦·Î, ´Ù¸¥ ±¸Çöµé°ú ¿¬°üµÈ ÄÚµå. ÄÄÆÄÀÏµÈ ÄÚµåÀÇ ºÎºÐµéÀ» ¼±Åÿ¡ ´ëÇØ ½ÇÁ¦ Ç¥ÁØÀº ¿î¿µÃ¼Á¦ Á¸Àç¿¡ ±âÃÊÇÏÁö ¾ÊÁö¸¸, ¸¹Àº ÇÁ·Î±×·¥Àº ½Ã½ºÅÛ V Äڵ带 À§ÇÑ SVR4, BSD Äڵ带 À§ÇÑ BSD¿Í Linux- specific Äڵ带 À§ÇÑ linux Á¤ÀÇ(defining)°°Àº ±ÔÁ¤À» »ç¿ëÇÑ´Ù.

¸®´ª½º¿¡ ÀÇÇØ »ç¿ëµÇ´Â GNU C ¶óÀ̺귯¸®´Â ÄÄÆÄÀÏ ¶§ ´Ù¾çÇÑ ¸ÅÅ©·ÎµéÀÇ Á¤ÀÇ¿¡ ÀÇÇØ ¶óÀ̺귯¸®ÀÇ ´Ù¾çÇÑ Æ¯Â¡µéÀ» on ½Ãų ¼ö ÀÖµµ·Ï Çã¶ôÇÑ´Ù. ±×°ÍµéÀº ´ÙÀ½°ú °°´Ù.:

_BSD_SOURCE·Î Á¤ÀÇÇϸé, ºÎ°¡ÀûÀÎ Á¤ÀÇ _FAVOR_BSD´Â ¶óÀ̺귯¸®¸¦ À§ÇØ Á¤ÀǵǾîÁú °ÍÀÌ´Ù. ÀÌ°ÍÀº POSIX³ª SVR4À» ÅëÇØ ¼±ÅÃµÈ ¾î¶² °Í¿¡ ´ëÇØ BSD ÇൿÀ» ¾ß±â½Ãų °ÍÀÌ´Ù. ¿¹¸¦ µé¾î, _FAVOR_BSD°¡ Á¤ÀǵǸé, setjmp¿Í longjmp°¡ ½ÅÈ£ ¸¶½ºÅ©¸¦ ÀúÀåÇÒ °ÍÀÌ°í getgrp´Â PID ¾Æ±Ô¸ÕÆ®¸¦ ¹Þ¾ÆµéÀÏ °ÍÀÌ´Ù. ÀÌÀåÀÇ ¾Õ¿¡¼­ ¾ð±ÞÇß´ø Ư¡µéÀ» À§ÇØ BSD-like ÇൿÀ» ¾ò±âÀ§ÇØ libbsd¿¡ ´ëÇØ ¿©ÀüÈ÷ ¿¬°áÇؾßÇÔÀ» ÁÖ¸ñÇ϶ó.

¸®´ª½º¿¡¼­, gcc´Â ÀÚµ¿ÀûÀ¸·Î ´ç½ÅÀÇ ÇÁ·Î±×·¥¾È¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸¹Àº ¸ÅÅ©·Î¸¦ Á¤ÀÇÇÑ´Ù. ±×°ÍµéÀº ´ÙÀ½°ú °°´Ù.:

¸¹Àº ÇÁ·Î±×·¥Àº Linux-specific Äڵ带 µÑ·¯½Î±â À§ÇØ #ifdef linux¸¦ »ç¿ëÇÑ´Ù. ÀÌ·¯ÇÑ compile-time ¸ÅÅ©·ÎµéÀ» »ç¿ëÇÏ¿© Á¸ÀçÇÏ´Â Äڵ忡 ¸®´ª½º·Î ÇÁ·Î±×·¥À» Æ÷ÆÃÇϱâ À§ÇØ ÇÊ¿äµû¸¥ º¯È­µéÀ» ½±°Ô Æ÷ÇÔ(include)Çϰųª ¹èÁ¦(exclude)ÇÒ ¼ö ÀÖ´Ù. ÀϹÝÀûÀ¸·Î ¸®´ª½º°¡ ´õ ¸¹Àº ½Ã½ºÅÛ V-like Ư¡µéÀ» Áö¿øÇϱ⠶§¹®¿¡ ½Ã½ºÅÛ V ¶Ç´Â BSD¸¦ À§ÇÏ¿© ÀÛ¼ºµÈ ÇÁ·Î±×·¥À¸·Î ºÎÅÍ ±âº»ÀûÀ¸·Î ½ÃÀÛÇÏ·Á¸é ÃÖ¼±ÀÇ ÄÚµå´Â ¾Æ¸¶µµ ½Ã½ºÅÛ V ¹öÀüÀÏ °ÍÀÌ´Ù.


ÀÌÀü:10.4.3 ¸®´ª½º¿¡¼­ÀÇ ÇÁ·Î¼¼½º ÅëÁ¦ ´ÙÀ½:10.6 ºÎ°¡ÀûÀÎ ÁÖ¼®¹®

Copyright (c) 1996,1997 by Euibeom.Hwang & SangEun.Oh All Rights Reserved

Email To:Webmaster , Another address
LAST UPDATE Dec 19,1997
Created Dec 19,1997