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' 프로젝트를 확인하시기 바랍니다. (어떠한 기능도 수행하지 않는 함수를 지정)

 

모든 제품 이름은 해당 소유자의 상표 또는 등록 상표입니다.

죄송하지만, 당사 사이트에서는 Internet Explorer를 지원하지 않습니다.보다 편안한 사이트를 위해 Chrome, Edge, Firefox 등과 같은 최신 브라우저를 사용해 주시길 부탁드립니다.