728x90

linker 2

링커 스크립트 분석 5단계

📢 linker script, 어떻게 분석해야하나 막막해서 방법을 알아봤어요 링커 스크립트는 프로그램의 각 코드와 데이터를 메모리 어디에 어떻게 배치할지 지휘하는 설계도에요아래 5단계를 토대로 링커 스크립트를 분석해봐요 1단계: “ 이 MCU의 메모리 지도를 보자”MEMORY {} 블록을 먼저 봐요MEMORY { ROM (rx) : ORIGIN = 0x00000000, LENGTH = 512K RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 128K} 이게 바로 칩의 메모리 지도죠 ROM은 읽기 전용RAM은 자유롭게 읽고 쓸 수 있는 공간여기서 각 영역의 주소와 크기를 먼저 이해해야, 섹션 배치가 어디로 가는지 따라갈 수 있어요. 2단계: “무엇을 어디에 둘 것인가..

TIL/2025 2025.04.24

C/C++ 코드 빌드 과정 이해하기

📢 C/C++ 코드를 짜고 gcc 명령 한 방이면 실행 파일이 뚝딱 만들어지지만 그 안에는 굉장한 절차가 숨어있어요  🤖 컴파일러?목적에 따라 다양한 컴파일러가 있어요gcc, clang, arm-none-eabi...우린 ARM Cortex 시스템을 위한 arm-none-eabi 컴파일러를 예제로 살펴봐요  🪜 C/C++ 코드 빌드 6 StepStep 1. 전처리 (Preprocessing) - 재료 손질하기 🥦소스 코드가 요리라면, 전처리는 재료 손질 단계!#include, #define 같은 전처리 지시문을 실제 코드로 바꾸는 작업을 해요예를 들어, #include 같은 헤더 파일이 실제 코드로 포함이 돼요컴파일러를 -E 옵션과 함께 실행하면 .i 파일을 얻을 수 있어요 💡main.i 파일..

TIL/2025 2025.02.14
728x90