[Linux] Chapter 11 : 프로그래밍 환경

Lern-Backup·2021년 12월 13일
0

Linux

목록 보기
9/9

📗 11.1 프로그램 작성과 컴파일

단일 모듈 프로그램

  • $ gedit [파일 이름] : gedit 문서편집기 사용
  • gedit를 사용하는 경우 C 프로그램 강조 모드 선택 가능

단일 모듈 프로그램 컴파일

  • $ gcc [-옵션] 파일 : C 프로그램 컴파일, 옵션을 사용하지 않으면 실행파일 a.out를 생성
  • $ gcc longest.c
    $ a.out : gcc 컴파일러의 옵션을 사용하여 생성할 목적 파일
    혹은 실행 파일의 이름을 지정할 수 있음
  • $ gcc -c longest.c : 목적 파일로부터 실행 파일을 만들기 위해서는 -o 옵션을 사용하여 실행 파일 이름을 지정해 다시 컴파일
  • $ gcc -o longest longest.c : 혹은 목적 파일을 만들고 실행 파일을 만드는 과정 동시에 하기
  • $ gcc -S longest.c : 또한 -S 옵션을 사용해 어셈블리 프로그램 longest.s 파일을 생성할 수 있음
  • $ gcc -o test -lm test.c : -l 옵션을 이용해 특정 라이브러리를 링크할 수 있음

다중 모듈 프로그램

  • 단일 모듈 프로그램의 문제점은 코드의 재사용이 어렵고 여러 사람이 참여하는 프로그래밍이 어렵다는 것

재사용할 수 있는 함수를 준비하기 위해서는
1. 함수의 소스 코드를 포함하는 소스 코드 파일(.c 파일)과
2. 함수의 프로토타입을 포함하는 헤더 파일(.h 파일)을 함께 작성해야 함

다중 모듈 프로그램 컴파일

  • 다중 모듈 프로그램 컴파일 방법
  • $ gcc -c main.c
    $ gcc -c copy.c
    $ gcc -o main.o copy.o

📗 11.2 자동 빌드 도구

make 시스템

  • $ make [-f 메이크파일] : make 시스템은 메이크파일(makefile 혹은 Makefile)을 이용하여 보통 실행 파일을 빌드, 옵션을 사용하여 별도의 메이크파일을 지정할 수 있음

메이크파일

make 시스템 실행


📗 11.3 gdb 디버거

gdb 사용

  • 정지점(breakpoint) 설정
  • 한 줄씩 실행
  • 변수 접근 및 수정
  • 함수 탐색
  • 추적(tracing)

$ gdb [실행파일] : gdb 디버거는 실행파일을 이용하여 디버깅 모드로 실행

gdb 기능

  • 소스보기 : l
  • 정지점 : b, clear, d
  • 프로그램 수행
  • 변수 값 프린트 : p
profile
공부 백업용

0개의 댓글