[occam's Razor ȨÀ¸·Î]

Windows¿¡¼­ C++ TR1 ¶óÀ̺귯¸® »ç¿ëÇϱâ

ÀÌ ¹®¼­´Â ¹ø¿ª¼­ C++ Ç¥ÁØ ¶óÀ̺귯¸® È®Àå: Æ©Å丮¾ó ¹× ·¹ÆÛ·±½º¸¦ º¸ÃæÇÏ´Â °ÍÀ¸·Î, Windows¿¡¼­ g++°ú Boost.TR1À» ÀÌ¿ëÇØ¼­ C++ TR1 ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. IDE·Î´Â Dev-C++¸¦ ¼±ÅÃÇßÀ¸³ª, ÄÄÆÄÀÏ·¯ ÆÐŰÁö¸¦ ÀÓÀÇ·Î ¼³Á¤ÇÒ ¼ö ÀÖ´Â ´Ù¸¥ IDE(Code::Blocks, Turbo C++, Eclips CDT µîµî)¿¡¼­µµ ÀÌ ±Û°ú º»ÁúÀûÀ¸·Î µ¿ÀÏÇÑ ¹æ¹ýÀ» Àû¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

Dev-C++ ¼³Ä¡

Dev-C++Àº http://prdownloads.sourceforge.net/dev-cpp/devcpp-4.9.9.2_setup.exe ¶Ç´Â http://sourceforge.net/project/showfiles.php?group_id=10639 ¿¡¼­ ³»·Á¹ÞÀ» ¼ö ÀÖ´Ù.

³»·Á¹ÞÀº ¼³Ä¡ ÇÁ·Î±×·¥À» ½ÇÇàÇØ¼­ Dev-C++À» ¼³Ä¡ÇÑ´Ù. ¼³Ä¡´Â ÀϹÝÀûÀÎ Windows¿ë ÇÁ·Î±×·¥ ¼³Ä¡¿Í ´Ù¸¦ ¹Ù°¡ ¾ø´Ù. ÀÌÇÏÀÇ ±Û¿¡¼­´Â Dev-C++À» D:\Dev\Dev-Cpp ¿¡ ¼³Ä¡Çß´Ù°í °¡Á¤ÇÑ´Ù.

´ÙÀ½À¸·Î Korean.lng(UIÀÇ ¾ð¾î ÆÄÀÏ)À» °»½ÅÇÑ´Ù. http://kldp.net/frs/?group_id=134&release_id=1455 ¿¡¼­ Korean.lng.4.9.9.2¸¦ ¹Þ¾Æ¼­ D:\Dev\Dev-Cpp\Lang¿¡ Korean.lng¶ó´Â À̸§À¸·Î ÀúÀåÇÏ¸é µÈ´Ù.

Ä¿½ºÅÒ Mingw ¼³Ä¡

TR1À» Áö¿øÇÏ´Â g++ 4.2.x¸¦ Æ÷ÇÔÇÏ´Â Ä¿½ºÅÒ MinGW ÆÐŰÁö¿¡´Â ¿©·¯ °¡Áö°¡ ÀÖÁö¸¸, ¿©±â¼­´Â Stephan T. LavavejÀÌ ¸¸µç MinGW ÆÐŰÁö(ÀÌÇÏ nuwen-MinGW)¸¦ »ç¿ëÇϱâ·Î ÇÑ´Ù. ÀÌ ÆÐŰÁö´Â ¹«¾ùº¸´Ùµµ ºôµåµÈ Boost ¶óÀ̺귯¸® Àüü¸¦ Æ÷ÇÔÇϰí ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù (g++ 4.2.x´Â ¾ÆÁ÷ tr1::regex¸¦ Áö¿øÇÏÁö ¾Ê±â ¶§¹®¿¡ BoostÀÇ °ÍÀ» »ç¿ëÇØ¾ßÇÑ´Ù).

nuwen-MinGWÀÇ ÃֽйöÀüÀ» http://nuwen.net/mingw.html ¿¡¼­ ¹Þ´Â´Ù. ÀÌ ±ÛÀº 3.1 ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ´Ù.

µû·Î ¼³Ä¡ÇÁ·Î±×·¥ ¾ø°í, zipÆÄÀÏÀ» Àû´çÇÑ µð·ºÅ͸®¿¡ Ç®¸é µÈ´Ù. ÀÌ ±Û¿¡¼­´Â D:\Dev\Mingw ¿¡ Ç®¾ú´Ù°í °¡Á¤ÇÑ´Ù.

Dev-C++¿¡¼­ nuwen-MinGW¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤

´ÙÀ½À¸·Î, Dev-C++ÀÌ nuwen-MinGW¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤ÇÑ´Ù.

»õ ÄÄÆÄÀÏ·¯ ¼³Á¤ ±¸¼º ¸¸µé±â ¹× ±âº» ¼³Á¤

¿ì¼± Ä¿½ºÅÒ MinGW¸¦ »ç¿ëÇÏ´Â ÄÄÆÄÀÏ·¯ ¼³Á¤ ±¸¼ºÀ» »õ·Î ¸¸µç´Ù. Dev-C++ ¸ÞÀÎ ¸Þ´ºÀÇ µµ±¸ - ÄÄÆÄÀÏ·¯¸¦ Ŭ¸¯Çؼ­ "ÄÄÆÄÀÏ·¯ ¼³Á¤" ´ëÈ­»óÀÚ¸¦ ¿­°í, "ÄÄÆÄÀÏ·¯" ÅÇ¿¡¼­ ´ÙÀ½À» ¼öÇàÇÑ´Ù.

  • "ÄÄÆÄÀÏ·¯ ¼³Á¤ Çϱâ"ÀÇ ³ì»ö [+] ¹öư Ŭ¸¯ÇÏ°í »õ ¼³Á¤ ±¸¼ºÀÇ À̸§À» ÀÔ·ÂÇÑ´Ù. ¿©±â¿¡¼­´Â mingw-nuwen-3.1¶ó°í Çϱâ·Î ÇÑ´Ù.
  • "ÄÄÆÄÀÏ·¯ Ãß°¡ ¸í·É"À» üũÇϰí -DBOOST_HAS_GCC_TR1¸¦ Ãß°¡ÇÑ´Ù.[1]
  • "´ÙÀ½ÀÇ ¸µÅ© Ãß°¡ ¸í·É »ç¿ë"À» üũÇϰí -lboost_regex¸¦ Ãß°¡ÇÑ´Ù.[2]

¿©±â±îÁö ÇÏ°í ³ª¸é ´ëÈ­»óÀÚ´Â ´ÙÀ½°ú °°Àº ¸ð½ÀÀÌ µÈ´Ù.

µð·ºÅ͸® ¼³Á¤

Dev-C++ÀÌ Äڵ带 ºôµåÇÒ ¶§ ÂüÁ¶ÇÏ´Â µð·ºÅ͸®µéÀ» ¼³Á¤ÇÑ´Ù.

ÄÄÆÄÀÏ·¯ ¼³Á¤ ´ëÈ­»óÀÚÀÇ "µð·ºÅ͸®" ÅÇÀÇ °¢ ÇÏÀ§ ÅǵéÀ» ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù. µð·ºÅ͸® Ç׸ñµéÀǼø¼­°¡ ¾ÆÁÖ Áß¿äÇÔÀ» ÁÖÀÇÇÒ °Í.

½ÇÇà ÆÄÀϵé

D:\Dev\MinGW\bin
D:\Dev\Dev-Cpp\bin

¶óÀ̺귯¸®

D:\Dev\MinGW\lib

C Çì´õ

D:\Dev\MinGW\include

C++ Çì´õ

D:\Dev\MinGW\include\boost\tr1\tr1
D:\Dev\MinGW\lib\gcc\i686-pc-mingw32\4.2.1-dw2\include
D:\Dev\MinGW\include\c++4.2.1-dw2\backward
D:\Dev\MinGW\include\c++4.2.1-dw2\i686-pc-mingw32
D:\Dev\MinGW\include\c++4.2.1-dw2
D:\Dev\MinGW\include
D:\Dev\MinGW\include\c++4.2.1-dw\tr1

[3]

ÀÌ·¸°Ô ÇØ¼­ Dev-C++¿¡¼­ TR1À» »ç¿ëÇϱâ À§ÇÑ Áغñ°¡ ³¡³µ´Ù.

ÇÁ·ÎÁ§Æ® ¼³Á¤¿¡¼­ ÄÄÆÄÀÏ·¯ ¼±ÅÃ

¸¶Áö¸·À¸·Î, TR1À» »ç¿ëÇÏ´Â ÇÁ·ÎÁ§Æ®¿¡¼­ ¹æ±Ý ¼³Á¤ÇÑ ÄÄÆÄÀÏ·¯ ¼³Á¤ ±¸¼ºÀ» »ç¿ëÇϵµ·Ï ¼³Á¤ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ¸ÞÀÎ ¸Þ´ºÀÇ ÇÁ·ÎÁ§Æ® - ÇÁ·ÎÁ§Æ® ¼³Á¤À» ¼±ÅÃÇÑ ÈÄ ÄÄÆÄÀÏ·¯ ÅÇ¿¡¼­ mingw-nuwen-3.1À» ¼±ÅÃÇØ ÁÖ¸é µÈ´Ù.

½ÃÇè

TR1 ¶óÀ̺귯¸®¸¦ ½ÃÇèÇØ º¼¸¸ÇÑ ¿¹Á¦ ¼Ò½º·Î´Â C++ Ç¥ÁØ ¶óÀ̺귯¸® È®Àå: Æ©Å丮¾ó ¹× ·¹ÆÛ·±½ºÀÇ ¿¹Á¦ Äڵ尡 Àû´çÇÒ °ÍÀÌ´Ù. (Dev-C++¿¡¼­ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé°í ÄÄÆÄÀÏÇÏ´Â ¹æ¹ýÀº µû·Î ¼³¸íÇÏÁö ¾Ê°Ú´Ù.) g++ÀÇ TR1 ±¸Çö°ú Boost.TR1ÀÌ ¾ÆÁ÷ ¿ÏÀüÇÏÁö ¾Ê±â ¶§¹®¿¡ ¿¹Á¦ ÄÚµå ¸ðµÎ°¡ Á¦´ë·Î ÄÄÆÄÀϵÇÁö´Â ¾Ê´Â´Ù. ƯÈ÷ C ȣȯ¼º ºÎºÐ°ú ¼öÇÐ ÇÔ¼ö °ü·Ã ¿¹Á¦µéÀº ´ëºÎºÐ ÄÄÆÄÀϵÇÁö ¾Ê´Â´Ù. ±× ¿Ü¿¡ Á¤±Ô Ç¥Çö½ÄÀ̳ª Æ©ÇÃ, ¶È¶ÈÇÑ Æ÷ÀÎÅÍ µîÀº Á¦´ë·Î ÄÄÆÄÀÏ, ½ÇÇàµÇ¾î¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é µ¶ÀÚÀÇ ¼³Á¤¿¡ ¹®Á¦°¡ Àְųª ÀÌ ±Û¿¡ ³ª¿Â ¹æ¹ý ÀÚü¿¡ ¹º°¡ ¹®Á¦°¡ ÀÖ´Â °ÍÀÌ´Ù.

Âü°í·Î, C++ Çì´õ ¼³Á¤¿¡ ...\boost\tr1\tr1 °ú ...\c++4.2.1-dw\tr1 ÀÌ Ãß°¡µÇ¾î ÀÖÀ¸¹Ç·Î, TR1 Çì´õ¸¦ Æ÷ÇÔ½Ãų ¶§

 #include <tr1/Çì´õ>

ÇüŰ¡ ¾Æ´Ï¶ó tr1/ÀÌ ºÙÁö ¾ÊÀº

 #include <Çì´õ>

ÇüŸ¦ »ç¿ëÇØ¾ß ÇÑ´Ù. ...\boost\tr1 °ú ...\c++4.2.1-dw µµ Ãß°¡ÇÑ´Ù¸é #include <tr1/Çì´õ> µµ °¡´ÉÇϰÚÁö¸¸ ½ÃÇèÇØ º¸Áö´Â ¾Ê¾Ò´Ù.


[1] À̰ÍÀº Boost.TR1ÀÌ g++ÀÇ TR1 ±¸ÇöÀ» ¿ì¼±ÀûÀ¸·Î »ç¿ëÇÏ°Ô ¸¸µç´Ù.

[2] Á¤±ÔÇ¥Çö½Ä Áö¿øÀ» À§ÇÑ °ÍÀÌ´Ù.

[3] À̿ʹ ´Ù¸¥ µð·ºÅ͸® ¼ø¼­µµ °¡´ÉÇÒ ¼ö ÀÖÁö¸¸, Áö±Ý±îÁö ½ÇÇèÇØ º» ¹Ù·Î´Â ÀÌ ¼ø¼­°¡ ¹®Á¦(Çì´õ ÆÄÀÏÀ» ãÁö ¸øÇϰųª ½Äº°ÀÚ Á¤Àǰ¡ ¼Ò½ÇµÇ´Â µî)¸¦ °¡Àå Àû°Ô ÀÏÀ¸Ä×´Ù.


¸ÞÀÎ ÆäÀÌÁö

¹ø¿ª¼­ Á¤º¸

¹ø¿ª À̾߱â

¹®¼­ â°í

ÀÚÀ¯ °Ô½ÃÆÇ

¹æ¸í·Ï