startup 코드 제거
기술노트 13062
아키텍처:
All
컴포넌트:
linker
업데이트:
2021-06-27 오전 7:02
소개
프로그램은 두 개의 IAR Embedded Workbench 프로젝트로 구성되며, 첫 번째 프로젝트는 두 번째 프로그램을 바이너리 이미지로 연결합니다.
문제
두 번째 애플리케이션의 startup 코드도 이진 이미지에 포함됩니다. 문제는 연결된 출력의 크기를 줄이는 것입니다. 첫 번째 응용 프로그램 실행 시작에 있으므로 기본 프로젝트의 startup 코드만 있으면 됩니다.
원하는 동작
바이너리 이미지에서 두 번째 프로젝트의 원치 않는 startup 코드를 제거합니다.
제안사항
기본으로, 링커에서 필요한 심볼을 확인하기 시작하는 레이블은 __iar_program_start
(startup 코드의 시작 부)입니다.
프로젝트 옵션에서 사용자 고유의 입력 심볼을 지정하여 기본 동작을 재정의합니다:
- IAR Embedded Workbench for AVR:
Options > Linker > Config > Override default program entry > Entry symbol - IAR Embedded Workbench for ARM:
Options > Linker > Library > Override default program entry > Entry symbol
ARM 예제
기술 노트 28924에서 'Entry symbol'을 재 정의한 'Common' 프로젝트를 확인하시기 바랍니다. (어떠한 기능도 수행하지 않는 함수를 지정)
모든 제품 이름은 해당 소유자의 상표 또는 등록 상표입니다.