진도표 : 554~565(UNIX System Programming)
GCC 참고 사이트
http:// gcc.gnu.org
.c -> 전처리 -> .i -> assemble -> .s -> compile -> .o -> link -> a.out
컴파일과정
전처리 옵션 -E(cpp)
gcc -E hello.c > hello.i
assemble 옵션 -S
compile 옵션 ? (as)
gcc -c hello.s
link 옵션 ? (ld)
라이브러리 바인딩
동적(윈도우즈의 dll)
- 공유라이브러리 사용(Shared Library) : so 파일 이용
정적(윈도우즈의 lib)
- 모든 코드를 실행파일에 포함 : a 파일 이용
- gcc 옵션 : -static
심볼정의 활용
gcc옵션 : -D[매크로]
gcc -DVALUE=1999 ex2.c
#define VALUE 1999의 의미가 추가됨.
활용 : 디버그
표준 헤더 파일 디렉터리(INCLUDE)
gcc옵션 : -I[컴파일시 이용할 INCLUDE디렉터리]
예시) ex4.h가 현재 디렉터리에 저장되어 있다.
#include <ex4.h>
gcc -I. ex4-2.c
라이브러리 사용
gcc옵션
-l[컴파일시 이용할 라이브러리 이름]
예시) /usr/lib/libm.a파일 이용시(math)
gcc -lm ex5.c
-L[컴파일시 이용할 LIB디렉터리]
예시)
cp /usr/lib/libm.a libmym.a
gcc -L. ex5.c -lmym
UNIX에서 인수를 이용할 때 파일명을 입력하고 뒤에 옵션을 이용한다.
'컴퓨터 공부 > 유닉스 시스템 프로그래밍' 카테고리의 다른 글
[4월 22일 1교시] (0) | 2009.04.22 |
---|---|
[스터디] Beginning Linux 4e - 4. 리눅스 환경 (0) | 2009.04.21 |
쉘 명령어 (0) | 2009.04.21 |
[스터디] Beginning Linux 4e - 2. 쉘 프로그래밍 (0) | 2009.04.21 |
vi (0) | 2009.04.21 |