2장 Objective-C 로 프로그래밍 하기


대부분의 Objective-C 책에서는 Xcode를 사용하는 방법에 대해서 나와있다. Xcode 사용법은 어플 개발할때 자세하게 알아보도록 하며 이번 장에서는 윈도우에서 Objective-C 코딩하는 법을 알아보자.


 윈도우에서 Objective-C를 테스트하기 위해서는 다음과 같은 절차가 필요하다.

1. GNUStep 설치

2. Dev-C++ 설치

3. GNUStep Compiler Setting


1. GNUStep http://www.gnustep.org/ )

Cocoa APIs(NeXTSEPT/OpenStep)의 Free 또는 Open 버전을 만들어 다양한 플랫폼에서 자유롭게 사용할 수 있도록 하는것을 목적으로 한다.


1.1 GNUStep 을 설치한다.

- GNUstep MSYS System 

- GNUstep Core

Windows 용 다운로드: http://www.gnustep.org/experience/Windows.html



확인을 위해서 DOS 창에서 아래와 같이 gcc -v 를 해보면 gcc가 설치된 것을 볼 수 있다.



2. Dev-C++ 설치

Dev-C++은 Win32를 위한 IDE로 Mingw or Cygwin의 gcc compiler와 library를 사용한다.

오픈 소스 프로젝트로 SourceForge에서 받을 수 있다.

(http://sourceforge.net/projects/dev-cpp/?source=navbar)




설치 후 Dev-C++을 실행하면 다음과 같이 IDE가 실행된다. 

아래와 같이 Hello World 테스트를 작성하고 빌드 실행 메뉴에서 빌드한다.


빌드  완료후 실행을 누르면 아래와 같이 실행되는 모습을 볼 수 있다.



3. Objective-C 컴파일 설정하기

Dev-C++의 도구->컴파일 설정을 눌러서 Objective-C 설정을 새로 추가한 후 "컴파일러 추가명령" 과 "링커 추가 명령 사용" 에 다음과 같이 추가한다.



컴파일러 추가 명령: -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import

링커 추가 명령 사용: -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import


디렉토리 탭을 눌러서 다음 값 들을 설정해 준다.



실행 파일들: C:\GNUstep\mingw32\bin, C:\GNUstep\bin



라이브러리: C:\GNUstep\mingw32\lib, C:\GNUstep\GNUstep\System\Library\Libraries



C Include: C:\GNUstep\msys\1.0\include, C:\GNUstep\GNUstep\System\Library\Headers



C++ Include: C:\GNUstep\GNUstep\System\Library\Headers, C:\GNUstep\include


이제 컴파일 설정은 완료했다. 

프로젝트를 생성해서 Objective-C를 컴파일하고 실행해 보자.


4. 프로젝트 생성, 빌드 및 실행

프로젝트 생성시 Empty Project 를 선택하고 "C"를 기본언어로 설정한다.


파일을 추가하고 XXX.m 파일로 저장한다. 

아래와 같이 HelloWorld Class를 만들고 main을 만들어 빌드해 보자.


빌드 에러가 발생할 경우 아래와 같이 "프로젝트 속성"에서 컴파일러 탭의 컴파일러를 이전에 만들어 놓은 "Objective-C" 컴파일러로 바꾸어 준다.


빌드 완료하면 xxx.exe 파일이 만들어지고, 실행을 하면 아래와 같이 결과 창이 뜬다.



5. GDB 사용하여 Debugging 하기

gdb를 사용하기 위해서는 아래와 같이 컴파일 옵션에 gdb 옵션을 추가해 준다.


컴파일러 추가 명령: -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import -ggdb

링커 추가 명령 사용: -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import -ggdb


일반적인 IDE 처럼 Editor 왼쪽에 break point를 설정할 수 있도록 되어 있다. break pointer를 설정하면 아래와 같이 빨간 색으로 표시되고 메뉴에 디버그를 눌러 시작하면 break point에서 멈추고 파란색으로 표시된다.


아래 디버그 창에서 다음 단계를 선택하면 커멘트 단위별로 실행 할 수 있다. 현재 실행 중인 라인은 파란색으로 표시 된다.




Posted by 빨간 양말