|

컴파일 뜻 : 컴파일링이란?

■ 컴파일이란?

컴파일(compile)이란 프로그래머가 작성한 소스코드를 바이너리 파일로 변환하는 과정이다. 소스코드를 Compiler 하여 프로그램을 만들 수 있다. 요즘은 배포판 공급업체에서 이미 compile 된 바이너리 파일들을 저장소에 관리하는 것이 일반적인 사항이 되었으며, 서버로 다운로드 후 바로 사용할 수 있다.

Ⅰ. 컴파일링과 링킹

compile 과정을 컴파일링(compiling)이라고 하며, 소스코드(사람일 읽을 수 있는 형태의 프로그램)를 컴퓨터 프로세서의 언어로 변경하는 절차이다. 컴퓨터 프로세서는 실행 시 기계어로 실행되는 바이너리(이전법 0,1)이다.


프로그래밍 언어는 C언어 및 C++언어 그리고 C#, Objective-C, JAVA, Javascript, Swift, Perl, Ruby, Python, PHP 등이 있다.

컴파일

컴파일링과 함께 사용되는 과정 중 링킹이 있다. 프로그램들이 파일 열기를 각각 한다면 시간 낭비가 될 수 있기 때문이다. 프로그램이 컴파일러의 출력물과 컴파일 된 프로그램이 필요한 라이브러리를 연결하는 데 링커가 사용된다. 컴파일링과 링킹의 과정을 통한 결과물이 실행파일이다.

Ⅱ. 컴파일을 하는 이유

ⓐ 가용성: 배포반 저장소에 있는 사용 가능한 프로그램들이 있음에도, 배포판은 사용자가 원하는 모든 프로그램 요소를 가지고 있지 않을 수 있다. 결국 방법은 필요한 프로그램을 소스로부터 얻어 프로그램을 컴파일링 해서 만들어 사용하는 이유다.

ⓑ 적시성: 배포판이 최신 버전의 프로그램이 적용되어 있을 수 있지만 반대인 경우도 많다. 최신 버전의 프로그램을 사용하기 위해 Compiler을 사용할 수 있다.

구글 검색 시 Compiler 설치 방법이 인터넷에 넘쳐 나는 이유는 기술 블로그를 운영하는 사람들이 업무 시 참고용 기록을 남긴 것으로 추측된다. Compiler 방법을 블로그에 남겨 놓고 나중에 다시 작업을 할 수 있게 끔 기록을 남긴 것으로 보인다.

Ⅲ. 컴파일러 or 인터프리터

compile 작업을 할 수 있게 해주는 프로그램을 컴파일러(Compiler)라고 한다. 컴파일러는 소스 코드를 읽어서 즉시 결과를 출력하는 인터프리터(interpreter)와 구분된다.

compile 없이 직접 실행되는 스크립트 or 인터프티터 언어로 알려진 프로그래밍 언어들은 직접 실행된다. 스크립트 언어인터프리터로 불리는 특수 한 프로그램에 의해 실행된다. 인터프리터는 작성된 명령어들을 한번에 한 줄 씩 읽으면서 실행하는 프로그램이다. 

리눅스 서버 등에서 인기 있는 인터프리터 언어는 Perl, python, PHP, Ruby 등이 있다.

인터프리트 된 프로그램들은 컴파일된 프로그램보다 느리게 실행되며, 프로그램 내 소스 코드 명령이 매번 번역된 후 실행되기 때문이다. Compiler 된 소스코드는 한번만 해석되면 결과물인 실행 파일로 기록되어 있어 속도가 빠르다.

컴파일 뜻 : 컴파일링이란?

인터프리트 언어는 복잡한 Compiler 단계가 없어서 프로그램 개발 속도가 빠르고 그만큼 인기가 있다고 볼 수 있다.

Similar Posts

  • 웹 사이트 방문자 수와 페이지뷰&세션 3가지 항목 차이 이해하기

    구글 애널리틱스는 웹 사이트를 운영하는 사용자에게 필수적인 도구입니다. Google Analytics는 초보자에게 여러가지 생소한 단어들로 가득하기 때문에 벅찰 수 있습니다. Analytics를 포함한 웹 사이트를 운영하면서 접하게 되는 웹 사이트 방문자 수와 페이지뷰 차이에 대해 알아 보겠습니다. 1. 웹 사이트 방문자 수(Visits) 웹 사이트 방문Visits 은 URL로 유입, 검색 엔진을 통한 유입 등 다양한 방법으로…

  • Apache http2 적용하기(mod_http2)

    리눅스 서버에 Apache를 설치하게 되면, 기본 프로토콜은 HTTP/1.1을 기본으로 통신하게 되어 있다. Apache http2는 Apache 2.4.17 버전 부터 DSO 모듈로(mod_http2.so) HTTP/2를 지원한다. HTTP/2(Hypertext Transfer Protocol Version 2)는 월드 와이드 웹에서 쓰이는 HTTP 프로토콜의 두 번째 버전이다. Apache http2 적용 http2 적용 확인하기 크롬 개발자 도구에서 프로토콜을 확인하면 [h2]로 적용된 걸 확인할 수 있다….

  • SSH 명령어: 옵션 및 사용 방법

    리눅스에서 SSH(Secure Shell)는 네트워크를 통해 다른 시스템에 안전하게 접속할 수 있도록 해주는 프로토콜입니다. SSH는 원격 서버와 클라이언트 간의 통신을 암호화하여 보안성을 높이며, 주로 원격 접속, 파일 전송, 그리고 터널링 기능을 제공합니다. SSH 명령어를 사용하여 사용자는 원격 서버에 안전하게 접속한 뒤 다양한 작업을 수행할 수 있습니다. 터널링 기능: 한 네트워크에서 다른 네트워크로 데이터를 안전하게…

  • 리눅스 sort 명령어: 파일 정렬

    종류 및 분류의 사전적 의미를 가진 리눅스 sort 명령어는 아스키 파일 내용(레코드)을 정렬할 때 사용하는 명령어입니다. 알파벳순이나 오름차순 또는 내림차순으로 정렬해야 하는 경우에 사용하는 명령어입니다. ✅ 리눅스 sort 명령어 기본 사용 방법 ✅ 리눅스 sort 명령어 옵션 ✅ 리눅스 sort 명령어 사용 예시 기본 사용 방법입니다.

  • 리눅스 pwd 명령어 & realpath 명령어 | 절대 경로 위치 확인

    ✅ pwd 명령어 pwd 명령어는 Print Working directory의 약자로 현재 작업 디렉토리의 위치를 보여주는 명령어로 현재 사용자가 접속한 절대 경로를 표시합니다. 🔲 명령어 옵션 pwd 명령어는 간단한 명령어로 옵션은 2가지만 존재합니다. ✅ realpath 명령어 realpath 명령어는 실제 경로를 절대 경로로 보여주는 명령어로, 심볼릭 링크의 실제 경로를 확인할 때 함께 사용합니다.

  • FTP란?(&SFTP): 파일질라 서버 접속 FTP&SFTP 2가지 접속 방법의 차이점

    워드프레스 및 웹사이트 관리를 하기 위해 리눅스 서버에 접속한다면 SSH 또는 FTP로 접속을 합니다. 무료 ssh 프로그램 중에서 모바엑스텀이 개인적으로 제일 편했습니다. 파일질라(FileZilla)는 윈도우, macOS, 리눅스 PC에서 이용할 수 있습니다. 파일질라 ftp 설정과 파일질라 sftp 설정 등의 기본적인 방법 등에 대한 전반적인 내용을 다뤄 보도록 하겠습니다. 앞서 FTP와 SFTP에 대해 간단히 알아 보겠습니다….