728x90
반응형
compile
- source code를 computer가 이해할 수 있게 작업
- 컴파일은 컴퓨터가 이해할 수 있는 형식으로 고급 프로그래밍 언어의 소스 코드를 변환하는 프로세스
- 컴파일러는 이 프로세스를 수행하는 프로그램임
- 컴파일러는 소스 코드를 토큰이라는 작은 단위로 분해함
- 그런 다음 토큰을 구문 분석하여 문법 오류가 있는지 확인
- 문법 오류가 없으면 컴파일러는 토큰을 기계어 명령이라는 컴퓨터가 이해할 수 있는 형식으로 변환
- 마지막으로 컴파일러는 기계어 명령을 오브젝트 파일이라는 파일에 저장함
- 오브젝트 파일은 링커를 사용하여 실행 파일이라는 하나의 파일로 결합할 수 있음
- 실행 파일은 컴퓨터에서 실행할 수 있는 프로그램임
Linking (링크, 링킹, 링커 등)
- 여러 개체 파일을 하나의 실행 파일로 결합하는 프로세스
- 서로 다른 파일과 위치에 있는 함수 및 클래스를 결합하는 작업
- 링커는 각 개체 파일의 기계어 명령을 취하여 하나의 실행 파일로 결합함
- 또 각 개체 파일에 필요한 라이브러리를 연결
GNU compiler
- GNU project로 제작된 compiler
- GNU 컴파일러(GCC)는 GNU 프로젝트에서 개발한 컴파일러 제품군
- C, C++, Objective-C, Fortran, Java, Ada, Pascal, Go 및 MIPS assembly를 포함한 다양한 프로그래밍 언어를 지원
- GCC는 무료 오픈 소스 소프트웨어이며 Linux, Unix 및 Windows를 포함한 다양한 운영 체제에서 사용할 수 있음
GNU project
- GNU 프로젝트는 자유 소프트웨어 개발을 촉진하기 위해 Richard Stallman이 시작한 프로젝트
- 간단히 말하면 개인이나 단체에 구속되지 않는 자유를 바탕으로 하는 프로젝트
- GNU 프로젝트의 목표는 자유롭고 개방적인 운영 체제인 GNU 운영 체제를 만들고 유지하는 것
- GNU 프로젝트는 GCC 및 기타 많은 자유 소프트웨어 프로그램과 라이브러리를 개발
GCC
- GCC는 GNU Compiler Collection의 약자임
- C, C++, Objective-C, Fortran, Ada, Go, D 및 Java를 포함한 다양한 프로그래밍 언어를 컴파일하는 데에 사용할 수 있는 무료 오픈 소스 컴파일러임
- 1987년 Richard Stallman이 처음 개발했으며 GNU 프로젝트의 일부임
G++
- G++는 GNU C++의 컴파일러이며 GCC의 C++ 구현임
- C++ 프로그램을 컴파일하고 링크하는 데 사용할 수 있음
- G++는 GNU 프로젝트에서 개발하고 유지 관리함
MinGW64
- linux에서 G++ 지원함 windows에서는 MinGW64를 사용할 수 있음
반응형
'Study > IT & Computer' 카테고리의 다른 글
build(빌드), make(메이크) 그리고 cmake에 대한 간략 설명 (0) | 2023.05.15 |
---|---|
Ubuntu 20.04.5 ARM64에서 Visual Studio Code 글자 깨짐 없이 설치하기 (0) | 2023.02.23 |
Macbook M1에서 Ubuntu 20.04.5 desktop 설치하기 with UTM(virtual machine) (1) | 2023.02.22 |
CPU architecture(아키텍처) (0) | 2023.02.16 |
.NET과 .NET framework (0) | 2023.01.25 |