티스토리 뷰
*gcc 버전 확인
gcc -v
*gcc로 컴파일
gcc로 컴파일할 파일명
ex)gcc test.c
a.out이라는 실행 파일이 생김
./a.out으로 파일 실행
*gcc로 실행파일 지정 컴파일
gcc -o test test.c
*gcc로 컴파일만 하고 링크하지 않기
gcc -c test.c
*두 개 파일을 부분 컴파일 후 링크시키고 실행
gcc -c a.c b.c
gcc -o a a.o b.o
./a
*헤더파일
헤더파일 중에 <>로 묶인 것과 ""로 묶인 것이 있다.
<>로 묶인 것은 /usr/include에서 파일을 검색하고,
""로 묶인 것은 현재 디렉토리 및 -I옵션을 준 디렉토리에서 헤더파일을 찾는다.
gcc a.c -I..
gcc a.c -I/usr/src/linux/include
*-t 묶음 파일의 내용을 표시하는 옵션
ar t libc.a | less
정적 라이브러리 : a라는 확장자
공유 라이브러리 : so라는 확장자
*라이브러리 만들기
ar r libtest.a test.o
-s 옵션 : 목차를 갱신하거나 생성해줌
ar s libtest.a
ar rs libtest.a test.o
*라이브러리 사용
gcc -o test test.c -ltest
gcc -o test test.c -ltest -L.
-l옵션 뒤에 링크하고 싶은 라이브러리 이름을 써줌
라이브러리 파일의 이름에 공통적으로 붙는 lib는 빼주고, '.'을 포함한 확장자도 빼준 나머지를 씀
수학라이브러리인 libm.a를 링크하고 싶을 때는 -lm 과 같은 옵션을 붙여야 함
gcc의 기본 라이브러리 디렉토리
/lib, /usr/lib, /usr/local/lib
*도움말 man
ex) man errno
man -s 2 write (섹션 지정하는 옵션)
*에러 처리
#include <string.h>
char *strerror(int errnum);
#include <stdio.h>
void perror(const char* msg);
*사용
#include<errno.h>
fprintf(stderr, "ERROR: %s\n", strerror(errno));
perror("error");
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- @tistory.com
- UI변경
- 제약산
- Vista
- One UI
- 테더링 링크
- 오라클 계정 생성
- TMP
- 보라매공원
- Variable-Length Argument Lists
- 볼링
- 모데기 모임
- 함양 나들이
- CDPUserSvc
- antimalware
- d90
- CORS
- 제주도기행
- 윈도우 인코딩 설정
- 모데기
- 크리스마스 파티
- cvs설정
- win10
- 64비트
- 옹이생일
- 화면잠금 단축아이콘
- Cross-origin
- 작업표시줄투명처리
- 은행나무숲
- 시작메뉴초기화
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함