Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- c
- siss
- 풀이
- 백준
- hackctf
- WarGame
- 웹페이지 만들기
- XSS Game
- 생활코딩
- 숙명여자대학교 정보보안동아리
- C언어
- 자료구조 복습
- 파이썬
- HTML
- SWEA
- hackerrank
- CSS
- PHP 웹페이지 만들기
- 기계학습
- Sookmyung Information Security Study
- 숙명여자대학교 정보보안 동아리
- 드림핵
- BOJ Python
- lob
- The Loard of BOF
- BOJ
- Python
- Javascript
- c++
- 머신러닝
Archives
- Today
- Total
혜랑's STORY
[2020-2학기 리눅스 7주차] : 이론 본문
# 프로그램 작성과 컴파일
- gedit 문서편집기
- GNU의 대표적인 GUI 텍스트 편집기
- GNOME 환경의 기본 편집기 : 텍스트, 프로그램 코드, 마크업 언어 편집에 적합 / 깔끔하고 단순한 GUI
- gedit 메뉴
- 파일 : 새로 만들기, 열기, 저장, 되돌리기, 인쇄
- 편집 : 입력취소, 다시 실행, 잘라내기, 복사, 붙여넣기, 삭제
- 보기 : 도구모음, 상태표시줄, 전체화면, 강조 모드
- 검색 : 찾기, 바꾸기, 줄로 이동
- 도구 : 맞춤법 검사, 오타가 있는 단어 강조, 언어 설정, 문서 통계
- 문서 : 모두 정장, 모두 닫기, 새 탭 그룹, 이전 문서
- 단일 모듈 프로그램 : gedit를 이용한 프로그램 작성 <- [보기] 메뉴에서 c구문 강조 기능을 설정
- 코드의 재사용(reuse)이 어렵고, 여러 사람이 참여하는 프로그래밍이 어렵다.
* 프로그램 편집하는 화면
전처리 지시자 | 분홍색 |
주석 | 파란색 |
자료형 이름 | 초록색 |
문장 키워드 | 브라운색 |
- gcc(GNU cc) 컴파일러
$ gcc [-옵션] 파일 -> C 프로그램을 컴파일한다. 옵션을 사용하지 않으면 실행파일 a.out를 생성한다. [옵션] * -c : 목적 파일 생성 * -o : 실행 파일 생성 |
- 다중 모듈 프로그램
- 여러 개의 .c 파일들로 이루어진 프로그램
- 일반적으로 복잡하며 대단위 프로그램인 경우에 적합
# 자동 빌드 도구
- make 시스템의 필요성
- 다중 모듈 프로그램을 구성하는 일부 파일이 변경된 경우, 변경된 파일만 컴파일하고, 파일들의 의존 관계에 따라서 필요한 파일만 다시 컴파일하여 실행 파일을 만들면 좋다.
- 메이크 파일 : 실행 파일을 만들기 위해 필요한 파일들과 그들 사이의 의존 관계, 만드는 방법 들을 기술
- make 시스템 : 메이크파일을 이용하여 파일의 상호 의존 관계를 파악하여 실행 파일을 쉽게 다시 만듬
$ make [-f 메이크파일] -> make 시스템은 메이크파일을 이용하여 보통 실행 파일을 빌드한다. 옵션을 사용하여 별도의 메이크파일을 지정할 수 있다. |
- 메이크파일의 구성
-> 형식
목표(target) : 의존리스트(dependencies) 명령리스트(commands) |
# GDB 디버거(GNU debugger)
$ gdb [실행파일] -> gdb 디버거는 실행파일을 이용하여 디버깅 모드로 실행한다. |
- 주요 기능
- 정지점(breakpoint) 설정
- 한 줄씩 실행
- 변수 접근 및 수정
- 함수 참색
- 추적(tracing)
# 이클립스 통합개발환경 : 다양한 언어(C/C++, Java 등)를 지원하는 통합개발환경
- 새로운 C 프로젝트 생성
- File -> New -> C/C++ Projects 선택
- 프로젝트 이름을 지정
- 프로젝트 타입 Hello World ANSI C Project 선택
- Finish 버튼 글릭하면 간단한 HelloWorld.c 프로그램 자동 생성
- 프로젝트 타입 Enpty Project 선택시 빈 프로젝트 생성
- 메인화면
- 좌측 탐색 창 : 새로 생성된 프로젝트를 확인/ 프로젝트 밒 파일들을 탐색 가능/ 소스파일은 src 폴더에 헤더 파일은 include 폴더에 저장된
- 중앙 상단 : 소스 및 각종 파일 등을 편집, 수정할 수 있는 창/ 하단은 C파일을 컴파일 혹은 실행한 결과를 보여주는 창들이다.
- 우측 : 우측은 사용법을 보여준다.
# VI 에디터
- vi 내부 명령어
- 원하는 위치로 이동하는 명령
- 입력모드로 전환하는 명령
- 수정 혹은 삭제 명령
- 복사 및 붙이기
- 기타 명령
'2020 SISS 21기 활동 > 2학기 리눅스' 카테고리의 다른 글
[2020-2학기 리눅스 8주차] : 이론 (0) | 2020.11.22 |
---|---|
[2020-2학기 리눅스 7주차] : 실습 (0) | 2020.11.15 |
[2020-2학기 리눅스 6주차] : 이론 (0) | 2020.11.07 |
[2020-2학기 리눅스 5주차] : 실습 (0) | 2020.11.01 |
[2020-2학기 리눅스 5주차] : 이론 (0) | 2020.11.01 |