.\" This source code is a product of Sun Microsystems, Inc. and is provided .\" for unrestricted use provided that this legend is included on all tape .\" media and as a part of the software program in whole or part. Users .\" may copy or modify this source code without charge, but are not authorized .\" to license or distribute it to anyone else except as part of a product or .\" program developed by the user. .\" .\" THIS PROGRAM CONTAINS SOURCE CODE COPYRIGHTED BY SUN MICROSYSTEMS, INC. .\" SUN MICROSYSTEMS, INC., MAKES NO REPRESENTATIONS ABOUT THE SUITABLITY .\" OF SUCH SOURCE CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT .\" EXPRESS OR IMPLIED WARRANTY OF ANY KIND. SUN MICROSYSTEMS, INC. DISCLAIMS .\" ALL WARRANTIES WITH REGARD TO SUCH SOURCE CODE, INCLUDING ALL IMPLIED .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN .\" NO EVENT SHALL SUN MICROSYSTEMS, INC. BE LIABLE FOR ANY SPECIAL, INDIRECT, .\" INCIDENTAL, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING .\" FROM USE OF SUCH SOURCE CODE, REGARDLESS OF THE THEORY OF LIABILITY. .\" .\" This source code is provided with no support and without any obligation on .\" the part of Sun Microsystems, Inc. to assist in its use, correction, .\" modification or enhancement. .\" .\" SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE .\" INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS .\" SOURCE CODE OR ANY PART THEREOF. .\" .\" Sun Microsystems, Inc. .\" 2550 Garcia Avenue .\" Mountain View, California 94043 .\" .\" Copyright (c) 1991 Sun Microsystems, Inc. .\" .\" @(#) dlopen. 3 1.6 90/01/31 SMI .\" %FreeBSD: src/lib/libc/gen/dlopen. 3, v 1.8. 2.7 2001/12/14 18:33:51 ru Exp % .\" $FreeBSD: doc/ja_JP.eucJP/man/man3/dlopen. 3, v 1.4 2002/05/18 07:12:54 horikawa Exp $ .\" .\" WORD: directed acyclic graph À¯Çâºñ¼øÈ¸ ±×·¡ÇÁ .Dd September 24, 1989 .Os .Dt DLOPEN 3 .Sh ¸íĪ .Nm dlopen , dlsym , dlerror , dlclose .Nd µ¿Àû ¸µÄ¿¿¡ÀÇ ÇÁ·Î±×·¥ÀÇ ÀÎÅÍÆäÀ̽º .Sh ÇÁ·Î±×·¥ ¶óÀ̺귯¸® .Lb libc .Sh ¼­½Ä .In dlfcn.h .Ft void * .Fn dlopen "const char *path" "int mode" .Ft void * .Fn dlsym "void *handle" "const char *symbol" .Ft const char * .Fn dlerror "void" .Ft int .Fn dlclose "void *handle" .Sh ÇØ¼³ ÀÌ·¯ÇÑ ÇÔ¼ö´Â, µ¿Àû ¸µÄ¿ ¼­ºñ½º¿¡ ´ëÇÑ ´Ü¼øÇÑ ÇÁ·Î±×·¥ÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù. ÇÁ·Î±×·¥ÀÇ address °ø°£¿¡ »õ·Î¿î °øÀ¯ ¿ÀºêÁ§Æ®¸¦ Ãß°¡ÇÏ´Â Á¶ÀÛ, °øÀ¯ ¿ÀºêÁ§Æ®°¡ Á¤ÀÇÇÏ´Â ½Éº¼ÀÇ ÁÖ¼Ò °áÇÕÀ» ÃëµæÇÏ´Â Á¶ÀÛ, ¹× °øÀ¯ ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇÒ Çʿ䰡 ¾ø¾îÁ³À» ¶§¿¡ ±×°ÍÀ» Á¦°ÅÇÏ´Â Á¶ÀÛÀÌ Á¦°øµÇ°í ÀÖ½À´Ï´Ù. .Pp .Fn dlopen (Àº)´Â, .Fa path ¾ÈÀÇ °øÀ¯ ¿ÀºêÁ§Æ®¿¡ÀÇ ¾×¼¼½º¸¦ Á¦°øÇØ, .Fn dlsym (¿Í)°ú .Fn dlclose ÀÇ È£Ãâ¿¡ ´ëÇØ, ¿ÀºêÁ§Æ®¸¦ ´ÙÀ½¿¡ ÂüÁ¶Çϱâ À§Çؼ­ »ç¿ë °¡´ÉÇÑ ±â¼úÀÚ¸¦ µ¹·ÁÁÝ´Ï´Ù. .Fn dlopen (À»)¸¦ È£ÃâÇϱâ Àü¿¡ .Fa path ÇÏÁö¸¸ address °ø°£³»¿¡ ¾ø¾ú´ø °æ¿ì´Â address °ø°£¿¡ ¹èÄ¡µË´Ï´Ù. ÀÌ ¹æ¹ýÀ¸·Î, ¿ÀºêÁ§Æ®°¡ óÀ½À¸·Î address °ø°£¿¡ ·Îµå µÉ ¶§, ÇÔ¼ö .Fn _init ÇÏÁö¸¸ Á¸ÀçÇÏ¸é ±×°ÍÀÌ µ¿Àû ¸µÄ¿¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù. ¾ÕÀÇ .Fn dlopen È£Ãâ·Î address °ø°£³»¿¡ .Fa path ÇÏÁö¸¸ ÀÌ¹Ì ¹èÄ¡µÇ°í ÀÖ´Â °æ¿ì, 2 ¹øÂ°´Â Ãß°¡µÇÁö ¾Ê½À´Ï´Ù. ±×·¯³ª, .Fa path À§¿¡¼­ÀÇ .Fn dlopen Á¶ÀÛÀÇ ÂüÁ¶ Ä«¿îƮġ´Â °ü¸®µË´Ï´Ù. .Fa path (À¸)·Î ÁöÁ¤µÈ °ÍÀÌ NULL Æ÷ÀÎÅÍÀ̸é, ÇÁ·Î¼¼½ºÀÇ ¸ÞÀÎ ½ÇÇà °¡´É ¸ðµâ¿¡ÀÇ ÂüÁ¶·Î¼­ ÇØ¼®µË´Ï´Ù. .Fa mode (Àº)´Â, ·Îµå µÈ ¿ÀºêÁ§Æ®·ÎºÎÅÍÀÇ ¿ÜºÎ ÇÔ¼ö¿¡ÀÇ ÂüÁ¶°¡, ¾î¶»°Ô ±× ÂüÁ¶Ã³¿Í °áÇÕÇÏ´ÂÁö, ±×¹æ¹ýÀ» Á¦¾îÇÕ´Ï´Ù. À̰Ϳ¡´Â ´ÙÀ½ÀÇ °ª Áß 1 °³°¡ Æ÷ÇÔµÇÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ¾î¼¸é, ´ÙÀ½¿¡ ¸»ÇÏ´Â Ãß°¡ Ç÷¡±×¿ÍÀÇ OR ¸¦ ÃëÇÑ °ª¿¡ µÇ°ÚÁö¿ä. .Bl -tag -width RTLD_LAZYX .It Dv RTLD_LAZY ¿ÜºÎ ÇÔ¼ö¿¡ÀÇ ÂüÁ¶´Â °¢°¢ ÇÔ¼ö°¡ ÃÖÃÊ·Î ºÒ·Á °¥ ¶§ ÇØ°áµË´Ï´Ù. .It Dv RTLD_NOW ¿ÜºÎ ÇÔ¼ö¿¡ÀÇ ÂüÁ¶´Â ¸ðµÎ .Fn dlopen ¿¡ ÀÇÇØ Áï½Ã °áÇյ˴ϴÙ. .El .Pp .Dv RTLD_LAZY (Àº)´Â, È¿À²À» Àß ÇÑ´Ù°í ÇÏ´Â ÀÌÀ¯·Î ÀϹÝÀûÀ¸·Î ¹Ù¶÷Á÷ÇÕ´Ï´Ù. ±×·¯³ª, .Fn dlopen (À»)¸¦ È£ÃâÇϰí ÀÖ´Â µ¿¾È¿¡ ¹ÌÁ¤µµ¸® ½Éº¼À» È®½ÇÈ÷ ¹ß°ßÇϱâ À§Çؼ­´Â .Dv RTLD_NOW ÇÏÁö¸¸ Æí¸®ÇÕ´Ï´Ù. .Pp ´ÙÀ½ÀÇ Ç÷¡±×ÀÇ 1 °³¸¦ OR ¸¦ ÃëÇØ .Fa mode Àμö¾È¿¡ Æ÷ÇÔÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. .Bl -tag -width RTLD_GLOBALX .It Dv RTLD_GLOBAL ÀÌ °øÀ¯ ¿ÀºêÁ§Æ®·ÎºÎÅÍ ¾òÀ» ¼ö ÀÖ´Â ½Éº¼ ¹× ÇÊ¿äÇÏ°Ô µÇ´Â ¿ÀºêÁ§Æ®ÀÇ À¯Çâºñ¼øÈ¸ ±×·¡ÇÁ (DAG)°¡, ±× ¿Ü ¸ðµç °øÀ¯ ¿ÀºêÁ§Æ®·ÎºÎÅÍÀÇ ¹ÌÇØ°áÀÇ ÂüÁ¶¸¦ ÇØ°áÇϱâ À§Çؼ­ ÀÌ¿ë °¡´ÉÇÏ°Ô µË´Ï´Ù. .It Dv RTLD_LOCAL ÀÌ °øÀ¯ ¿ÀºêÁ§Æ®·ÎºÎÅÍ ¾òÀ» ¼ö ÀÖ´Â ½Éº¼ ¹× ÇÊ¿äÇÏ°Ô µÇ´Â ¿ÀºêÁ§Æ®ÀÇ À¯Çâºñ¼øÈ¸ ±×·¡ÇÁ (DAG)°¡, µ¿ÀÏÇÑ °øÀ¯ ¿ÀºêÁ§Æ®·ÎºÎÅÍÀÇ ¹ÌÇØ°áÀÇ ÂüÁ¶¸¦ ÇØ°áÇϱâ À§Çؼ­ ÀÌ¿ë °¡´ÉÇÏ°Ô µË´Ï´Ù. ÀÌÂÊÀÌ µðÆúÆ®ÀÇ µ¿ÀÛÀÔ´Ï´Ù¸¸, ÀÌ Ç÷¡±×¸¦ ÀÌ¿ëÇØ ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. .El .Pp .Fn dlopen (Àº)´Â, 󸮰¡ ½ÇÆÐÇϸé(ÀÚ) NULL Æ÷ÀÎÅ͸¦ µ¹·ÁÁÖ¾î, .Fn dlerror ±×¸®°í ¹®ÀÇÇϰí ÇÒ ¼ö ÀÖ´Â ¿¡·¯ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. .Pp .Fn dlsym (Àº)´Â, .Fa symbol ÇÏÁö¸¸ .Fa handle ±×¸®°í ½Äº°µÇ´Â °øÀ¯ ¿ÀºêÁ§Æ®³»¿¡¼­ ¹ß»ýÇßÀ» ¶§¿Í °°°Ô, ´­ ij¸¯ÅÍ·Î Á¾·áÇϴ ij¸¯ÅÍ ¶óÀÎ .Fa symbol ±×¸®°í ±â¼úµÈ ½Éº¼ÀÇ ÁÖ¼Ò °áÇÕÀ» µ¹·ÁÁÝ´Ï´Ù. .Fn dlopen ¿¡ ÀÇÇØ address °ø°£¿¡ Ãß°¡µÈ ¿ÀºêÁ§Æ®¿¡ ÀÇÇØ export µÈ´Ù ½Éº¼Àº, .Fn dlsym È£ÃâÀ» ÅëÇØ¼­¸¸ ¾×¼¼½º °¡´ÉÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ½Éº¼Àº, ¿ÀºêÁ§Æ®°¡ ·Îµå µÉ ¶§¿¡, ¹ú½á address °ø°£¿¡ Á¸ÀçÇϰí ÀÖ´Â ½Éº¼ÀÇ Á¤ÀÇ¿¡ ¿Å°ÜÁö´Â °Í¿¡¼­´Â ¾Ê°í, Åë»óÀÇ µ¿Àû ¸µÅ© ÂüÁ¶¸¦ ä¿ì±â À§Çؼ­(¶§¹®¿¡) ÀÌ¿ë °¡´ÉÇÑ ¹°°ÇÀ̱⵵ ÇÏÁö ¾Ê½À´Ï´Ù. .Pp .Fn dlsym ÇÏÁö¸¸ Ưº°ÇÑ .Fa handle .Dv NULL (À»)¸¦ »ç¿ëÇØ ºÒ·Á °¬À» °æ¿ì´Â, ±× ÇÚµéÀº È£ÃâÀÌ µÇ°í ÀÖ´Â ½ÇÇà ÆÄÀÏ È¤Àº °øÀ¯ ¿ÀºêÁ§Æ®¿¡ÀÇ ÂüÁ¶·Î¼­ ÇØ¼®µË´Ï´Ù. ÀÌ ¶§¹®¿¡, °øÀ¯ ¿ÀºêÁ§Æ®´Â ÀÚ±â ÀÚ½ÅÀÌ °¡Áö´Â ½Éº¼À» ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù. .Pp .Fn dlsym ÇÏÁö¸¸ Ưº°ÇÑ .Fa handle .Dv RTLD_DEFAULT (À»)¸¦ »ç¿ëÇØ ºÒ·Á °¬À» °æ¿ì´Â, ¿ÀºêÁ§Æ®°¡ ·Îµå µÉ ¶§¿¡ ¹ÌÁ¤µµ¸®ÀÇ ½Éº¼À» ÇØ°áÇϱâ À§Çؼ­ »ç¿ëµÇ´Â ¾Ë°í¸®Áò¿¡ µû¶ó ½Éº¼À» Ž»öÇÕ´Ï´Ù. Ž»öµÇ´Â ¿ÀºêÁ§Æ®´Â ´ÙÀ½°ú °°ÀÌ ¾²¿©Áø Â÷·Ê·Î µË´Ï´Ù. .Bl -enum .It ÂüÁ¶Çϰí ÀÖ´Â ¿ÀºêÁ§Æ® ÀڽŠ(ȤÀº .Fn dlsym ¿¡ÀÇ È£ÃâÀÌ µÇ°í ÀÖ´Â ¿ÀºêÁ§Æ®). ´Ù¸¸, ¿ÀºêÁ§Æ®°¡ .Xr ld 1 ¿¡ ´ëÇØ¼­ .Fl Wsymbolic ¿É¼ÇÀ» »ç¿ëÇØ ¸µÅ© µÇ¾úÀ» °æ¿ì. .It ÇÁ·Î±×·¥ÀÇ ±âµ¿½Ã¿¡ ·Îµå µÇ°í ÀÖ´ø Àü¿ÀºêÁ§Æ® .It .Fn dlopen °æÀ¯·Î ·Îµå µÈ Àü¿ÀºêÁ§Æ®. ÀÌ·¯ÇÑ ¿ÀºêÁ§Æ®´Â, ÂüÁ¶¸¦ ½Ç½ÃÇϰí ÀÖ´Â ¿ÀºêÁ§Æ®µµ Æ÷ÇÔÇÑ, ÇÊ¿äÇÏ°Ô µÇ´Â ¿ÀºêÁ§Æ®ÀÇ À¯Çâºñ¼øÈ¸ ±×·¡ÇÁ¿¡ Á¸ÀçÇÕ´Ï´Ù. .It .Dv RTLD_GLOBAL Ç÷¡±×¸¦ .Fa mode Àμö·Î ¼³Á¤ÇØ È£ÃâÇß´Ù .Fn dlopen °æÀ¯·Î ·Îµå µÈ Àü¿ÀºêÁ§Æ® .El .Pp .Fn dlsym ÇÏÁö¸¸ Ưº°ÇÑ .Fa handle .Dv RTLD_NEXT (À»)¸¦ »ç¿ëÇØ ºÒ·Á °¬À» °æ¿ì, ½Éº¼ÀÇ °Ë»öÀº, .Fn dlsym È£ÃâÀ» ¹ßÇàÇÑ ´ÙÀ½¿¡ ·Îµå µÈ °øÀ¯ ¿ÀºêÁ§Æ®¿¡ Á¦Çѵ˴ϴÙ. ±× ¶§¹®¿¡, ¸ÞÀÎ ÇÁ·Î±×·¥À¸·ÎºÎÅÍ ÀÌ ÇÔ¼ö°¡ ºÒ·Á °¬À» °æ¿ì, ¸ðµç °øÀ¯ ÇÁ·Î±×·¥ ¶óÀ̺귯¸®°¡ °Ë»öµË´Ï´Ù. ÀÌ ÇÔ¼ö°¡ °øÀ¯ ÇÁ·Î±×·¥ ¶óÀ̺귯¸®·ÎºÎÅÍ ºÒ·Á °¬À» °æ¿ì, ±× °øÀ¯ ÇÁ·Î±×·¥ ¶óÀ̺귯¸®º¸´Ù ´ÙÀ½¿¡ ·Îµå µÇ´Â °øÀ¯ ÇÁ·Î±×·¥ ¶óÀ̺귯¸® ¸ðµç °ÍÀÌ °Ë»öµË´Ï´Ù. .Dv RTLD_NEXT (Àº)´Â ÇÁ·Î±×·¥ ¶óÀ̺귯¸® ÇÔ¼ö¸¦ °¨½Î´Â ³ªÆÈÀ» ½ÇÀåÇϴµ¥ Æí¸®ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, ³ªÆÈ ÇÔ¼ö .Fn getpid (ÀÌ)°¡ ÀÖ´Â °æ¿ì, ÇÔ¼ö³»¿¡¼­ .Li dlsym(RTLD_NEXT, \&"getpid\&") (À»)¸¦ »ç¿ëÇϸé .Dq ÁøÂ¥ÀÇ .Fn getpid ¿¡ ¾×¼¼½º ÇÒ ¼ö ÀÖ°ÚÁö¿ä. .Pp ½Éº¼À» ã¾Æ³¾ ¼ö ¾ø¾ú´ø °æ¿ì, .Fn dlsym (Àº)´Â null Æ÷ÀÎÅ͸¦ µ¹·ÁÁÖ¾î, ¿¡·¯ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. ¿¡·¯ »óÅ´ .Fn dlerror (À»)¸¦ »ç¿ëÇØ ¹®ÀÇÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. .Pp .Fn dlerror (Àº)´Â, .Fn dlopen , .Fn dlsym , ¶Ç´Â .Fn dlclose È£Ã⵿¾È¿¡ ¹ß»ýÇÑ ¸¶Áö¸· ¿¡·¯¸¦ ±â¼úÇÑ´Ù ´­ ij¸¯ÅÍ·Î Á¾·áÇϴ ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. ÀÌ·¯ÇÑ ¿¡·¯°¡ ¹ß»ýÇϰí ÀÖÁö ¾Ê´Â °æ¿ì, .Fn dlerror (Àº)´Â NULL Æ÷ÀÎÅ͸¦ µ¹·ÁÁÝ´Ï´Ù. .Fn dlerror (À»)¸¦ È£ÃâÇÒ ¶§¸¶´Ù, ¿¡·¯ Áö½Ã°¡ ¸®¼ÂÆ® µË´Ï´Ù. ±× ¶§¹®¿¡, ÈÄÀÇ È£ÃâÀÌ ¾ÕÀÇ È£ÃâÀÇ Á÷ÈÄ¿¡ ¿À´Â °Í °°Àº .Fn dlerror È£ÃâÀ» ½Ç½ÃÇßÀ» °æ¿ì, ÈÄÀÇ È£Ãâ¿¡¼­´Â ¹Ýµå½Ã NULL Æ÷ÀÎÅͰ¡ µÇµ¹¾Æ ¿É´Ï´Ù. .Pp .Fn dlclose ÇÏ .Fa handle ÇÏÁö¸¸ ÂüÁ¶ÇÏ´Â °øÀ¯ ¿ÀºêÁ§Æ®¿¡ÀÇ ÂüÁ¶¸¦ »èÁ¦ÇÕ´Ï´Ù. ÂüÁ¶ Ä«¿îƮġ°¡ ÁÙ¿©Áö°í 0 ÀÌ µÇ¸é(ÀÚ), ±× ¿ÀºêÁ§Æ®´Â address °ø°£À¸·ÎºÎÅÍ »èÁ¦µÇ°í .Fa handle (Àº)´Â ¹«È¿°¡ µË´Ï´Ù. ÀÌ ¹æ¹ýÀ¸·Î °øÀ¯ ¿ÀºêÁ§Æ®¸¦ Á¦°ÅÇϱâ Á÷Àü¿¡, .Fn _fini ÇÔ¼ö°¡ ÀÌ ¿ÀºêÁ§Æ®·Î Á¤Àǵǰí ÀÖ´Â °æ¿ì¿¡´Â ±×°ÍÀ» È£ÃâÇÕ´Ï´Ù. .Fn dlclose (Àº)´Â, 󸮰¡ ¼º°øÇϸé(ÀÚ) °ª 0 À» µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â -1 À» µ¹·ÁÁÖ¾î, ¿¡·¯ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. ¿¡·¯ »óÅ´ .Fn dlerror ±×¸®°í ¹®ÀÇÇϰí ÇÒ ¼ö ÀÖ½À´Ï´Ù. .Pp ¿ÀºêÁ§Æ®¿¡ °íÀ¯ÀÇ ÇÔ¼ö .Fn _init (¿Í)°ú .Fn _fini (Àº)´Â, Àμö¾øÀÌ ºÒ·Á °¡ ¹Ýȯ°ªÀº ±â´ëµÇ°í ÀÖÁö ¾Ê½À´Ï´Ù. .Sh ÁÖ ELF ½ÇÇà °¡´É ÆÄÀÏÀÇ °æ¿ì, ÆÄÀÏÁß¿¡¼­ Á¤Àǵǰí ÀÖ´Â ½Éº¼À» .Fn dlsym ±×¸®°í º¸À̵µ·Ï(µíÀÌ) ÇÏ·Á¸é .Xr ld 1 ¿¡ ´ëÇØ¼­ .Fl export-dynamic ¿É¼ÇÀ» »ç¿ëÇØ ¸µÅ©¸¦ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. .Pp ÀÌÀüÀÇ ½ÇÀå¿¡¼­´Â, C ¾ð¾î·ÎºÎÅÍ ÄÄÆÄÀÏ ÇÑ ¿ÀºêÁ§Æ® ÄÚµå¿Í ½Éº¼ÀÇ È£È¯¼ºÀ» °®°ÔÇÒ ¼ö°¡ ÀÖµµ·Ï(µíÀÌ), ¿ÜºÎ ½Éº¼¿¡´Â ¸ðµÎ ¾ð´õ ½ºÄھƸ¦ ¼±µÎ¿¡ ºÙÀÏ Çʿ䰡 ÀÖ¾ú½À´Ï´Ù. ÇöÀç¿¡µµ, C ¾ð¾îÀÇ ÄÄÆÄÀÏ·¯¿¡ ´ëÇØ¼­ (ºñÃßõÀÔ´Ï´Ù¸¸) .Fl aout ¿É¼ÇÀ» »ç¿ëÇßÀ» °æ¿ì¿¡´Â µé¾î¸ÂÀ¾´Ï´Ù. .Sh ¿¡·¯ .Fn dlopen (¿Í)°ú .Fn dlsym (Àº)´Â, ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì¿¡´Â NULL Æ÷ÀÎÅ͸¦ µ¹·ÁÁÝ´Ï´Ù. .Fn dlclose (Àº)´Â 󸮰¡ ¼º°øÇϸé(ÀÚ) 0 À» µ¹·ÁÁÖ¾î, ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì´Â -1 À» µ¹·ÁÁÝ´Ï´Ù. ¿¡·¯°¡ °ËÃâµÉ ¶§¸¶´Ù, ¿¡·¯ÀÇ »ó¼¼¸¦ ¼³¸íÇÏ´Â ¸Þ¼¼Áö°¡ .Fn dlerror È£Ãâ¿¡ ÀÇÇØ ²¨³¾ ¼ö ÀÖ½À´Ï´Ù. .Sh °ü·Ã Ç׸ñ .Xr ld 1 , .Xr rtld 1 , .Xr dladdr 3 , .Xr link 5