링커 스크립트에서 만든 변수를
c에서 끌어오려면 extern 을 해주면 계산된 값이 불려온다.
| SECTIONS { /* Starts at LOADER_ADDR. */ . = 0x80000; /* For AArch64, use . = 0x80000; */ __start = .; __text_start = .; .text : { KEEP(*(.text.boot)) *(.text) } . = ALIGN(4096); /* align to page size */ __text_end = .; __bss_start = .; .bss : { bss = .; *(.bss) } . = ALIGN(4096); /* align to page size */ __bss_end = .; __bss_size = __bss_end - __bss_start; __end = .; } : 저 변수들은 실제 저안에서 사용된다기 보다는 소스 코드(C 파일 혹은 어셈블리어 파일)상에서 사용되면서 의미가 부여된다. 저 변수들을 소스 코드상에서 불러 오려면 어떻게 해야 할까? 아래의 코드를 보자. extern unsgined char __text_start; uint8_t *text_start = &__text_start; + extern usigned int __bss_size; |
'프로그램 사용 > gcc' 카테고리의 다른 글
| gcc -D 를 이용하여 명령줄에서 define 하기 (0) | 2026.03.12 |
|---|---|
| gcc __cplusplus 선언 (0) | 2026.02.18 |
| gcc __attribute__((weak)) 테스트 (0) | 2026.01.29 |
| gcc cortex-a9 double형 neon 연산 가속 (3) | 2023.08.08 |
| gcc tree vectorize (0) | 2023.01.26 |
