´ÙÀ½ ÀÌÀü Â÷·Ê

4. ¹Ì¸® ÆÐÅ°ÁöÈ­µÈ ¹ÙÀ̳ʸ® ÆÄÀÏ

4.1 rpms, ¹«¾ùÀÌ À߸øµÇ¾ú³ª?

¼Ò½º·ÎºÎÅÍ ¼öµ¿À¸·Î ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â °ÍÀº ºÐ¸íÈ÷ ¾î¶² ¸®´ª½º »ç¿ëÀڵ鿡°Ô´Â ¸Å¿ì °Ì³ª´Â ÀÏÀÌ´Ù. ±×·¡¼­ ÀαâÀÖ´Â rpm°ú deb ȤÀº ´õ »õ·Î¿î Stampede slp ÆÐÅ°Áö Æ÷¸ËÀ» »ç¿ëÇÏ°ï ÇÑ´Ù. rpm ¼³Ä¡°¡ º¸ÅëÀº ºÎµå·´°í ºü¸¦ ¼ö ÀÖ´Ù. ¾î´À ¾Ç¸í³ôÀº ¿î¿µ üÁ¦¿¡¼­ ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÏ´Â °Í ¸¸Å­À̳ª ¸»ÀÌ´Ù. ÇÏÁö¸¸ ÀÚµ¿À¸·Î ¼³Ä¡µÇ´Â ¹Ì¸® ÆÐÅ°ÁöÈ­µÈ ¹ÙÀ̳ʸ® ÆÄÀÏÀÇ ¾àÁ¡¿¡ ´ëÇؼ­µµ ºÐ¸íÈ÷ »ý°¢ÇØ º¸¾Æ¾ß ÇÑ´Ù.

ù°, ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°Áö°¡ º¸ÅëÀº ¸ÕÀú "tarball"·Î ¹èÆ÷µÇ¸ç, ¹Ì¸® ÆÐÅ°ÁöÈ­µÈ ¹ÙÀ̳ʸ® ÆÄÀÏÀº ¸çÄ¥¿¡¼­ ¸îÁÖ ½ÉÁö¾î´Â ¸î´Þ µÚ´Ê°Ô ³ª¿Â´Ù´Â °ÍÀ» ¾Ë¾Æ¾ß ÇÑ´Ù. ÇöÀçÀÇ rpm ÆÐÅ°Áö´Â ÃÖ½ÅÀÇ "tarball"¿¡ ºñÇØ Àû¾îµµ ¸¶ÀÌ³Ê ¹öÁ¯ 2 Á¤µµ ´Ê´Â °ÍÀÌ ÀϹÝÀûÀÌ´Ù. µû¶ó¼­ ¼ÒÇÁÆ®¿þ¾îÀÇ Ã·´ÜÀ» µû¶ó°¡°í ½ÍÀº »ç¶÷À̶ó¸é, rpmÀ̳ª deb°¡ ³ª¿À±â¸¦ ±â´Ù¸± ¼ö ¾øÀ» °ÍÀÌ´Ù. ´ú ÀαâÀÖ´Â ÆÐÅ°Áö¶ó¸é ¾Æ¿¹ rpmÀ¸·Î ¸¸µé¾îÁöÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù.

µÑ°, "tarball" ÆÐÅ°Áö°¡ º¸´Ù ¿ÏÀüÇϸç, ´õ ¸¹Àº ¿É¼ÇÀ» °¡Áö°í ÀÖ°í, ´õ ÃÖÀûÈ­½ÃÅ°±â ½±´Ù. ¹ÙÀ̳ʸ® ÆÄÀÏÀÇ rpm ¹èÆ÷º»Àº ¿ø·¡ ¹èÆ÷º»ÀÇ ±â´É °¡¿îµ¥ ÀϺθ¦ °¡Áö°í ÀÖÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù. ¼Ò½º rpmÀº Àüü ¼Ò½º Äڵ带 Æ÷ÇÔÇÏ°í ÀÖÀ¸¸ç, rpm --recompile ÆÐÅ°ÁöÀ̸§.rpm À̳ª rpm --rebuild ÆÐÅ°ÁöÀ̸§.rpm ¿É¼ÇÀ¸·Î ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ¿©¾ß ÇÑ´Ù.

¼Â°, ¾î¶² ¹Ì¸® ÆÐÅ°ÁöÈ­µÈ ¹ÙÀ̳ʸ® ÆÄÀϵéÀº Á¦´ë·Î ¼³Ä¡µÇÁö ¾ÊÀ¸¸ç, ¼³Ä¡°¡ µÇ¾ú´Ù°í Çصµ Á¤»óÀûÀ¸·Î Á¾·áµÇÁö ¸øÇÏ°í core-dump¸¦ ³¾ ¼ö ÀÖ´Ù. ÀÌ°ÍÀº ÀÇÁ¸ÇÏ°í ÀÖ´Â ¶óÀ̺귯¸®ÀÇ ¹öÁ¯ÀÌ ´ç½ÅÀÇ ½Ã½ºÅÛ¿¡ ÀÖ´Â °Í°ú ´Ù¸£±â ¶§¹®ÀÏ ¼öµµ ÀÖ°í, Á¦´ë·Î ÆÐÅ°ÁöÈ­µÇÁö ¾Ê¾ÒÀ» ¼öµµ ÀÖÀ¸¸ç, ȤÀº ±×Àú ½ÇÇà¿¡ ½ÇÆÐÇÑ °Í(plain broken)ÀÏ ¼öµµ ÀÖ´Ù. ¾î¶² °æ¿ì°Ç, rpmÀ̳ª deb¸¦ ¼³Ä¡Çß´Ù¸é, ´ç½ÅÀº ±× rpmÀ̳ª deb ÆÐÅ°Áö¸¦ ¸¸µç »ç¶÷ÀÇ ¼÷·Ãµµ¸¦ ¹Ï¾î¾ß¸¸ ÇÑ´Ù.

³¡À¸·Î, ¼Ò½º¸¦ ¸¸Áö°í ±×°ÍÀ¸·ÎºÎÅÍ ¹è¿ì±â À§Çؼ­´Â, ¼Ò½º Äڵ带 ¼Õ À§¿¡ °®°í ÀÖ´Â ÆíÀÌ ÁÁ´Ù. ¼Ò½º Äڵ带 ¾ÐÃà ÆÄÀÏ·Î °®°í ÀÖ´Â ÆíÀÌ º°µµÀÇ ¼Ò½º rpmÀ¸·Î °®°í ÀÖ´Â Æí¿¡ ºñÇØ ÈξÀ ´õ ¼ö¿ùÇÏ´Ù.

rpm ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÏ´Â °ÍÀÌ ²À ¾Æ¹« »ý°¢¾øÀÌ °¡´ÉÇÑ °ÍÀº ¾Æ´Ï´Ù. ÀÇÁ¸¼º¿¡ ¹®Á¦°¡ ÀÖÀ¸¸é rpm ¼³Ä¡´Â ½ÇÆÐÇÒ °ÍÀÌ´Ù. ºñ½ÁÇÑ °æ¿ì·Î, rpmÀÌ ´ç½Å ½Ã½ºÅÛ¿¡ ÀÖ´Â °Í°ú ´Ù¸¥ ¹öÁ¯ÀÇ ¶óÀ̺귯¸®¸¦ ¿ä±¸ÇÑ´Ù¸é, ¼³Ä¡´Â Á¦´ë·Î µÇÁö ¾ÊÀ» °ÍÀÌ´Ù. ´ç½ÅÀÌ Áö±Ý ÀÖ´Â ¶óÀ̺귯¸®¿¡¼­ ¾ø´Â ¶óÀ̺귯¸®·ÎÀÇ ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µé¾îÁØ´Ù Çصµ ¸»ÀÌ´Ù. rpm ¼³Ä¡°¡ Æí¸®Çϱâ´Â ÇÏÁö¸¸, "tarball" ¼³Ä¡°¡ ½ÇÆÐÇÏ´Â °Í°ú °°Àº ÀÌÀ¯·Î ½ÇÆÐÇÏ´Â °æ¿ì°¡ ÀÚÁÖ ÀÖ´Ù.

´ç½ÅÀº ÇÊ¿äÇÑ ¾²±â Çã°¡±ÇÀ» °®±â À§Çؼ­ rpm°ú debÀÇ ¼³Ä¡¸¦ root·Î¼­ Çؾ߸¸ Çϴµ¥, ÀÌ°ÍÀº ½É°¢ÇÑ ÀáÀçÀû º¸¾È ¹®Á¦¸¦ ¾ß±âÇÑ´Ù. ´ç½ÅÀÌ »ý°¢¾øÀÌ ½Ã½ºÅÛÀÇ ¹ÙÀ̳ʸ® ÆÄÀÏ°ú ¶óÀ̺귯¸®µéÀ» ¸ÁÃĹö¸®°Å³ª, ½ÉÁö¾î ´ç½Å ½Ã½ºÅÛÀ» Æı«ÇÒ Æ®·ÎÀÌ ¸ñ¸¶¸¦ ¼³Ä¡ÇÒ ¼öµµ Àֱ⠶§¹®ÀÌ´Ù. µû¶ó¼­ rpm°ú deb ÆÐÅ°Áö¸¦ "¹ÏÀ» ¼ö ÀÖ´Â ÀÚ·á¿ø"À¸·ÎºÎÅÍ ¾ò´Â °ÍÀÌ Áß¿äÇÏ´Ù. ¾î¶² °æ¿ì¿¡³ª ´ç½ÅÀº rpm ÆÐÅ°Áö¸¦ ¼³Ä¡Çϱâ Àü¿¡, rpm --cecksig ÆÐÅ°ÁöÀ̸§.rpm ¸í·ÉÀ¸·Î (MD5 checksum°ú ´ëÁ¶ÇÏ¿©) '¼­¸í È®ÀÎ'À» Çؾ߸¸ ÇÑ´Ù. ¸¶Âù°¡Áö·Î rpm -K --nopgp ÆÐÅ°ÁöÀ̸§.rpmÀ» ¼öÇàÇÒ °ÍÀ» °­·ÂÇÏ°Ô ±ÇÇÑ´Ù. deb ÆÐÅ°Áö¿¡¼­ ÀÌ¿¡ ÇØ´çÇÏ´Â ¸í·ÉÀº dpkg -I | --info ÆÐÅ°ÁöÀ̸§.deb ¿Í dpkg -e | --control ÆÐÅ°ÁöÀ̸§.deb ÀÌ´Ù.

ÁøÂ¥ ÆíÁýÁõ ȯÀÚ(ÀÌ Á¤µµ¶ó¸é ÆíÁý±¤À̶ó°í ºÎ¸£´Â °æ¿ì°¡ ´õ ¸¹´Ù)¶ó¸é, ÆÐÅ°Áö¸¦ Ç®¾î¼­ ±× ±¸¼º¿ä¼Ò¸¦ È®ÀÎÇϱâÀ§ÇÑ unrpm°ú rpmunpack À¯Æ¿¸®Æ¼¸¦ Sunsite utils/package directoryÀÇ utils/package µð·ºÅ͸®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

Klee DieneÀº ¼³Ä¡µÈ .deb ÆÄÀÏ¿¡ ¹®Á¦°¡ ÀÖ´ÂÁö MD5 checksum°ú ºñ±³ÇÏ¿© È®ÀÎÇÏ´Â dpkgcert¶ó´Â ½ÇÇèÀûÀÎ ÆÐÅ°Áö¸¦ ÀÛ¼ºÇß´Ù. Debian ftp archive¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù. ÇöÀçÀÇ ÆÐÅ°Áö À̸§ ¹× ¹öÁ¯Àº dpkgcert_0.2-4.1_all.deb ÀÌ´Ù. "http://dpkgcert.jimpick.com" name="Jim Pick Software">»çÀÌÆ®´Â dpkgcert°¡ ÀüÇüÀûÀÎ µ¥ºñ¾È ½Ã½ºÅÛ ³»ÀÇ ÆÐÅ°ÁöµéÀ» °ËÁõÇϵµ·Ï ÇÏ´Â ½ÇÇèÀûÀÎ ¼­¹ö µ¥ÀÌÅͺ£À̽º¸¦ ¿î¿µÇÏ°í ÀÖ´Ù.

°¡Àå ´Ü¼øÇÏ°Ô´Â, rpm -i ÆÐÅ°ÁöÀ̸§.rpm °ú dpkg --install ÆÐÅ°ÁöÀ̸§.deb ¸í·ÉÀ¸·Î ÀÚµ¿ÀûÀ¸·Î ¼ÒÇÁÆ®¿þ¾î¸¦ Ç®¾î¼­ ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ÀÌ ¸í·ÉÀ» ¸Í¸ñÀûÀ¸·Î ¾²¸é ´ç½Å ½Ã½ºÅÛÀ» ÇØÄ¥ ¼öµµ ÀÖÀ¸¹Ç·Î ÁÖÀÇÇØ¾ß ÇÑ´Ù.

À§ÀÇ °æ°í´Â Á¤µµ´Â ´ú ÇÏÁö¸¸ ½½·¢¿þ¾îÀÇ pkgtool ¼³Ä¡ À¯Æ¿¸®Æ¼¿¡µµ ¿ª½Ã Àû¿ëµÈ´Ù. ¸ðµç "ÀÚµ¿È­µÈ" ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡´Â ÁÖÀǸ¦ ¿äÇÏ´Â °ÍÀÌ´Ù.

martian¿Í alien ÇÁ·Î±×·¥Àº rpm, deb, StampedeÀÇ slp, tar.gz ÆÐÅ°Áö Çü½ÄÀ» ¼­·Î º¯È¯ÇØÁØ´Ù. ÀÌ ÇÁ·Î±×·¥µéÀ» ¾²¸é ÀÌ ÆÐÅ°ÁöµéÀ» ¸ðµç ¸®´ª½º ¹èÆ÷º»¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

´õ ÀÚ¼¼ÇÑ Á¤º¸°¡ ÇÊ¿äÇϸé rpm°ú dpkg ¸í·ÉÀÇ man ÆäÀÌÁö¸¦ ÁÖÀÇÇؼ­ Àаí, RPM HOWTO¿Í TFUGÀÇ Quick Guide to Red Hat's Package Manager, The Debian Package Management Tools¸¦ ÂüÁ¶Ç϶ó.

4.2 rpmsÀÇ ¹®Á¦: ÇÑ °¡Áö ¿¹

Jan Hubicka´Â xaos¶ó´Â ¸Å¿ì ÈǸ¢ÇÑ ÇÁ·¢Å» ÆÐÅ°Áö¸¦ ¸¸µé¾ú´Ù. ±×ÀÇ È¨ÆäÀÌÁö¿¡¼­ .tar.gz°ú rpm·Î µÈ ÆÐÅ°ÁöµéÀ» ±¸ÇÒ ¼ö ÀÖ´Ù. ÆíÀǸ¦ À§Çؼ­ "tarball" º¸´Ù´Â rpm ¹öÁ¯À» »ç¿ëÇϱâ·Î ÇÏÀÚ.

ºÒÇàÇÏ°Ôµµ rpm ¹öÁ¯ÀÇ xaos¸¦ ¼³Ä¡Çϴµ¥ ½ÇÆÐÇß´Ù. µÎ º°°³ÀÇ rpm ÆÇÀÌ ¸ðµÎ Á¦´ë·Î µ¿ÀÛÇÏÁö ¾Ê¾Ò´Ù.

rpm -i --test XaoS-3.0-1.i386.rpm

error: failed dependencies:
        libslang.so.0 is needed by XaoS-3.0-1
        libpng.so.0 is needed by XaoS-3.0-1
        libaa.so.1 is needed by XaoS-3.0-1

rpm -i --test xaos-3.0-8.i386.rpm

error: failed dependencies:
        libaa.so.1 is needed by xaos-3.0-8

ÀÌ»óÇÑ °ÍÀº libslang.so.0, libpng.so.0, libaa.so.1ÀÌ ¸ðµÎ ½ÃÇèµÈ ½Ã½ºÅÛÀÇ /usr/lib µð·ºÅ͸®¿¡ ÀÖ¾ú´Ù´Â °ÍÀÌ´Ù. xaosÀÇ rpmµéÀº ¸±¸®Áî ¹øÈ£´Â °°¾Æµµ Á¶±Ý ´Ù¸¥ ¹öÁ¯ÀÇ ¶óÀ̺귯¸®¸¦ ¾²µµ·Ï ÄÄÆÄÀϵǾúÀ½ÀÌ Æ²¸²¾ø´Ù.

½ÃÇè»ï¾Æ xaos-3.0-8.i386.rpmÀ» --nodeps ¿É¼ÇÀ» ÁÖ¾î °­Á¦·Î ¼³Ä¡ÇØ º¸ÀÚ. xaos¸¦ ½ÇÇà½ÃÄÑ º¸Áö¸¸, ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù.

xaos: error in loading shared libraries: xaos: undefined symbol: __fabsl

¿Ö ÀÌ·¸°Ô µÇ´ÂÁö ¾Ë¾Æº¸±â À§ÇØ, °è¼Ó ½ÃµµÇØ º¸±â·Î ÇÏÀÚ. xaos ½ÇÇàÆÄÀÏÀÌ ¾î¶² ¶óÀ̺귯¸®¿¡ ÀÇÁ¸ÇÏ°í ÀÖ´ÂÁö ã¾Æº¸±â À§ÇØ ldd¸¦ ½ÇÇà½ÃÄÑ º¸¸é, ÇÊ¿äÇÑ °øÀ¯ ¶óÀ̺귯¸®°¡ ¸ðµÎ ÀÖ´Ù´Â °ÍÀ» º¸¿©ÁØ´Ù. /usr/lib/libaa.so.1 ¶óÀ̺귯¸®¿¡ nmÀ» ½ÇÇàÇؼ­ ±× ½Éº¼¸¯ ·¹ÆÛ·±½º ¸ñ·ÏÀ» º¸¸é, ÀÌ ¶óÀ̺귯¸®¿¡´Â Á¤¸» __fabslÀÌ ºüÁ®ÀÖ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. ¹°·Ð ÀÌ ºüÁ®ÀÖ´Â ·¹ÆÛ·±½º´Â ´Ù¸¥ ¶óÀ̺귯¸®¿¡¼­ ºüÁø °ÍÀÏ ¼öµµ ÀÖÁö¸¸... ¶óÀ̺귯¸®¸¦ ¹Ù²ÙÁö ¾Ê´Â ÇÑ, ´õ ÀÌ»ó ¾î¿ ¼ö°¡ ¾ø´Ù.

rpmÀº ÀÌÁ¤µµ·Î ÃæºÐÇÏ´Ù. ÀÌÁ¦ "tarball" Áï XaoS-3.0.tar.gzÀ» Ȩ ÆäÀÌÁö³ª ftp »çÀÌÆ®¿¡¼­ ´Ù¿î¹Þ´Â´Ù. ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇغ¸±â·Î ÇÏÀÚ. ./configure, make¸¦ ½ÇÇà½ÃÅ°°í, ¸¶Áö¸·À¸·Î (·çÆ®·Î¼­) make installÀ» ½ÇÇàÇÑ´Ù. ¹®Á¦¾øÀÌ ÀÛµ¿ÇÑ´Ù.

ÀÌ°ÍÀº ¹Ì¸® ÄÄÆÄÀÏµÈ ÆÐÅ°Áö°¡ ±× ÀåÁ¡ º¸´Ù ´õ ¸¹Àº ¹®Á¦¸¦ ÀÏÀ¸Å°´Â ¸¹Àº ¿¹ ÁßÀÇ ÇϳªÀÏ »ÓÀÌ´Ù.


´ÙÀ½ ÀÌÀü Â÷·Ê