C++ 빌드 파이프라인: 소스 코드에서 실행 파일까지의 여정

개요 C++ 소스 코드가 컴퓨터가 이해할 수 있는 이진(Binary) 실행 파일로 변환되기까지는 여러 단계의 정교한 과정이 필요합니다. 전체적인 흐름은 다음과 같습니다. 소스 코드 (.cpp, .h) -> 전처리 (Preprocessing) -> 컴파일 (Compilation) -> 어셈블리 (Assembly) -> 링킹 (Linking) -> 실행 파일 (.exe, .out) 1. 전처리 (Preprocessing) 전처리는 실제 컴파일이 시 ...

7월 26일 17:14에 게시됨

소프트웨어 분석 강좌 노트: 컴파일러와 정적 분석의 기초

컴파일러와 정적 분석기의 구조 컴파일러의 구성 요소 컴파일러는 소스 코드를 기계 코드로 변환하는 핵심 도구입니다. 이 과정은 여러 단계로 구성되며, 각 단계는 특정 역할을 담당합니다. 1. 어휘 분석기(Scanner) 정규 표현식을 활용하여 소스 코드를 토큰으로 변환합니다. 이 단계에서는 단어의 철자와 의미적正確성을 검증합니다. 2. 구문 분석기(Parser) 문맥 ...

7월 24일 23:57에 게시됨

Rust로 구현하는 LLVM IR 코드 생성기: Kata-Kaleidoscope 프로젝트 Chapter 2 분석

Rust와 LLVM IR 코드 생성을 통한 컴파일러 개발 입문 컴파일러 개발의 핵심 중 하나는 원시 코드를 중간 표현(Intermediate Representation)으로 변환하는 과정이다.本章에서는 Rust 언어와 LLVM 라이브러리를 활용하여 AST(추상 구문 트)에서 LLVM IR을 생성하는 과정을详细히 다룬다. 예제 프로젝트인 Kata-Kaleidoscope를 통해 실제 코드 생성기의 구조와 구현 방식을 ...

6월 4일 23:06에 게시됨