|
ÃÑ ÆäÀÌÁö ¼ö : 3027
![]()
|
ÇöÀçÀ§Ä¡ : ¹Ì´Ï»çÀÌÆ®>eclipse>documents>CDT 1 CDT¸¦ ÀÌ¿ëÇÑ Windows C/C++ °³¹ß ȯ°æ ¸¸µé±â1.1 CDT¿¡ ´ëÇØ¼
CDT´Â C/C++ °³¹ßÅø·Î½á Eclipse Ç÷¿Æû¿¡¼, C/C++ ÅëÇÕ°³¹ßȯ°æÀÌ °¡´ÉÇϵµ·Ï Áö¿øÇÑ´Ù.
CDT´Â Eclipse ÇÁ·ÎÁ§Æ®ÀÇ È®ÀåÅø ÇÁ·ÎÁ§Æ®ÀÇ ÀϺηΠ°³¹ßµÇ°í ÀÖ´Ù. ¿ÏÀüÈ÷ °ø°³µÇ¾î ÀÖÀ¸¸ç, ´©±¸³ª CDT°³¹ß¿¡ Âü¿©ÇÒ ¼ö ÀÖµµ·Ï ¿·ÁÀÖ´Ù. 1.2 CDTÀÇ ÁÖ¿ä ±â´É
1.3 Eclipse CDT ¼³Ä¡Çϱâ (Windows ȯ°æ)
ÇöÀç (2005/07/17) ÃֽŹöÁ¯ÀÎ 3.1.0À» ±âÁØÀ¸·Î ¼³¸íÇϵµ·Ï ÇϰڴÙ. CDTÀÇ ¹öÁ¯Àº 2.1À» ±âÁØÀ¸·Î ÇÑ´Ù.
À¯´Ð½º ȯ°æÀº °£´ÜÇϱ⠶§¹®¿¡ À©µµ¿ì¸¦ ±âÁØÀ¸·Î ¼³¸íÇϵµ·Ï ÇÒ°ÍÀÌ´Ù. À©µµ¿ì ȯ°æ¿¡¼ Eclipse CDT¸¦ ÅëÇØ¼ C/C++ °³¹ßȯ°æÀ» ¸¸µé°æ¿ì GNU ȯ°æ(gcc,g++,gdb,make)À» ¿ì¼± ¸¸µé¾îÁà¾ß ÇÑ´Ù. ¹°·Ð VC++°ú °°Àº À©µµ¿ì Àü¿ë °³¹ßȯ°æÀ» ÀÌ¿ëÇÏ´Â °Íµµ ¹æ¹ýÀ̱ä ÇϰÚÁö¸¸, °³ÀÎÀûÀ¸·Î VC++Àº »ç¿ëÇÒ ÀÏÀÌ ¾ø°í, À©µµ¿ì ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßµµ QT¸¦ ÀÌ¿ëÇÒ °ÍÀ̱⠶§¹®¿¡ Eclipse + GNU + CDT ¸¦ °³¹ßȯ°æÀ¸·Î ÇÒ °ÍÀÌ´Ù. 1.3.1 GNU ȯ°æ ¸¸µé±â
GNU °³¹ßȯ°æÀº MINGW·Î ¸¸µé¾ú´Ù. MinGW(12)´Â À©µµ¿ì¿¡ GNU ȯ°æÀ» ¸¸µé±â À§ÇÑ Åø·Î cygwin(12)°ú ¸Å¿ì À¯»çÇÏ´Ù°í ÇÒ ¼ö ÀÖ´Ù. °ø°³¼ÒÇÁÆ®¿þ¾î ¶óÀ̼¾½º¸¦ µû¸¥´Ù. cygwin°ú´Â ´Þ¸® Windows Native ÀÀ¿ë °³¹ßÀÌ °¡´ÉÇϵµ·Ï Áö¿øÇϰí ÀÖ´Ù. MinGW´Â http://www.mingw.org ¿¡¼ ¹Þ¾Æ¼ ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº °£´ÜÇÑ Å×½ºÆ® ÄÚµå´Ù. #include <windows.h>
int WINAPI WinMain (HINSTANCE hInstance,
HINSTANCE hPrevInstance,
PSTR szCmdLine,
int iCmdShow)
{
MessageBox (NULL, "Hello", "Hello Demo", MB_OK);
return (0);
}
´ÙÀ½Àº ÄÄÆÄÀÏ ¹æ¹ýÀÌ´Ù.$ gcc -o hello.exe hello.cc -mwindows
STLÀ» Æ÷ÇÔÇÑ C++ Äڵ嵵 ÄÄÆÄÀÏ ÇØº¸¾Ò´Ù. ÀߵȴÙ. #include <map> #include <iostream> using namespace std; int main() { map<int, int> List; map<int, int>::iterator mi; List[100] = 50; List[87] = 30; List[98] = 99; List[32] = 12; mi = List.begin(); while(mi != List.end()) { cout << mi->first << " : " << mi->second << endl; mi++; } }
ȤÀº Windows QT4.0 opensource ¸¦ ´Ù¿î·Îµå ¹Þ¾Æ¼ ¼³Ä¡Çϸé, ¼³Ä¡µµÁß¿¡ MINGW¸¦ ¼³Ä¡ÇÒ °ÍÀÎÁö¸¦ ¹°¾îº¸´Âµ¥, QT°³¹ß ȯ°æÀ» ²Ù¹Ì°í ½Í´Ù¸é QT4.0 opensource ¹öÁ¯À» ´Ù¿î·Îµå ¹Þ¾Æ¼ ¼³Ä¡ Çϵµ·Ï ÇÑ´Ù. ÇÊÀÚÀÇ °æ¿ì QT4.0À» ¼³Ä¡ÇÏ¸é¼ °°ÀÌ ¼³Ä¡Çß´Ù.
MINGW ¿Í ÇÔ²² MSYSµµ ´Ù¿î¹Þ¾Æ¼ »ç¿ëÇϵµ·Ï ÇÏÀÚ. MSYS´Â À©µµ¿ì ȯ°æ¿¡¼ Unix ÄÜ¼Ö ÀÛ¾÷ȯ°æÀ» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁØ´Ù. ¼³Ä¡Çϸé bash shell°ú vim, grep¿Í °°Àº Çʼö Unix À¯Æ¿¸®Æ¼µéÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
´ÙÀ½Àº À©µµ¿ì¿¡¼ MSYS¸¦ ½ÇÇàÇÑ È¸éÀÌ´Ù. ![]() 1.3.2 Eclipse ½ÇÇàÇϱâ
Eclipse°¡ ½ÇÇàµÉ ¶§ MINGW·Î ¸¸µé¾îÁø GNUȯ°æÀÇ Åøµé(make, gcc, g++µî)À» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ȯ°æÀ» ¸¸µé¾îÁà¾ß ÇÑ´Ù. windows¿¡¼ setÀ¸·Î ȯ°æº¯¼ö¿¡ µî·ÏÇÏ¸é µÈ´Ù°í ÇÏ´øµ¥, À©µµ¿ì ȯ°æ¿¡ Àͼ÷ÇÏÁö ¸øÇÑ °ü°è·Î MINGWÀÇ bash ½©À» ÅëÇØ¼ ȯ°æÀ» ¸¸µé°í ÀÌŬ¸³½º¸¦ ½ÇÇà½ÃÄ×´Ù. $ cat ~/.bash_profile export PATH=$PATH:/c/MinGW/bin $ source ~/.bash_profile $ /c/eclipse/eclipse.exe 1.3.3 CDT ¼³Ä¡Çϱâ
Eclipse´Â 3.0 ¹öÁ¯ºÎÅÍ Update Manager ±â´ÉÀ» Á¦°øÇÑ´Ù. ´öºÐ¿¡ »õ·Î¿î ±â´ÉÀÇ Ãß°¡³ª ¾÷µ¥ÀÌÆ®°¡ ¸Å¿ì ½¬¿öÁ³´Ù.
1.4 CDT Tutorial1.4.1 Project »ý¼º
¸Þ´º¿¡¼ File > New > Project¸¦ ¼±ÅÃÇϸé Project wizardÀ©µµ¿ì°¡ ¶á´Ù. ¿©±â¿¡¼ ¾Ë¸ÂÀº ÇÁ·ÎÁ§Æ®¸¦ ¼±ÅÃÇÏ¸é µÈ´Ù. C++ÀÇ Managed Make C++ Project¸¦ ¼±ÅÃÇÏÇÏÀÚ. ![]()
Next ¹öưÀ» Ŭ¸¯Çϸé ÇÁ·ÎÁ§Æ®ÀÇ À̸§°ú ÇÁ·ÎÁ§Æ®°¡ À§Ä¡ÇÒ °æ·ÎÁöÁ¤À» À§ÇÑ Ã¢ÀÌ ¶á´Ù. ![]()
Next¹öưÀ» Ŭ¸¯Çؼ Project Type°ú ConfigurationsÀ» °áÁ¤ÇØÁØ´Ù. ![]()
Next ¹öưÀ» Ŭ¸¯ÇÏ¸é ºÎ°¡ÀûÀÎ ¼³Á¤À» Çϴ âÀÌ ¶á´Ù. ±âº»°ªÀ¸·Î Çϰí Finish¸¦ Ŭ¸¯Çϸé ÇÁ·ÎÁ§Æ®°¡ »ý¼ºµÈ´Ù. ![]()
Hello World¸¦ Ãâ·ÂÇØÁÖ´Â °£´ÜÇÑ ÇÁ·Î±×·¥À» ¸¸µé¾î º¸µµ·Ï ÇÏÀÚ. ![]()
´Ù ¸¸µé¾ú´Ù¸é Project > Build All(ȤÀº Ctrl+B)¸¦ ÀÌ¿ëÇØ¼ ºôµåÇϵµ·Ï ÇÑ´Ù. ºôµåµÈ ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄѼ °á°ú¸¦ È®ÀÎÇØ º¸µµ·Ï ÇÏÀÚ. Run > RunÀ» ¼±ÅÃÇÏ¸é ¾Æ·¡¿Í °°Àº À©µµ¿ì âÀÌ ¶á´Ù. New¸¦ Ŭ¸¯Çؼ »õ·Î¿î RUN ȯ°æÀ» ¸¸µé°í Project¿Í ½ÇÇà½Ãų C/C++ apllicationÀ» µî·Ï½Ã۵µ·Ï ÇÑ´Ù. |
|