7.8.7. EXPORT 또는 GLOBAL

EXPORT 지시어는 별도의 객체 및 라이브러리 파일에 있는 기호 참조를 확인하기 위해 링커에서 사용할 수 있는 기호를 선언합니다. GLOBALEXPORT의 동의어입니다.

구문

EXPORT {[WEAK]}
EXPORT symbol {[type]}
EXPORT symbol [attr{,type}]
EXPORT symbol [WEAK{,attr}{,type}]

인수 설명:

symbol

내보낼 기호 이름입니다. 기호 이름은 대소문자를 구분합니다. symbol을 생략하면 모든 기호가 내보내집니다.

WEAK

다른 소스에서 대체 symbol을 내보내지 않는 경우에만 symbol을 다른 소스로 가져오게 됩니다. [WEAK]symbol 없이 사용하면 내보낸 기호는 모두 weak 기호가 됩니다.

attr

다음 중 하나일 수 있습니다.

DYNAMIC

ELF 기호 표시를 STV_DEFAULT로 설정합니다.

PROTECTED

ELF 기호 표시를 STV_PROTECTED로 설정합니다.

HIDDEN

ELF 기호 표시를 STV_HIDDEN으로 설정합니다.

INTERNAL

ELF 기호 표시를 STV_INTERNAL로 설정합니다.

type

기호 형식을 지정합니다.

DATA

symbol은 소스를 어셈블 및 링크할 때 데이터로 간주됩니다.

CODE

symbol은 소스를 어셈블 및 링크할 때 코드로 간주됩니다.

ELFTYPE=n

symboln 값으로 지정되는 특정 ELF 기호로 간주됩니다. 여기서 n0에서 15 사이의 숫자일 수 있습니다.

지정하지 않는 경우 어셈블러가 가장 적합한 형식을 결정합니다.

사용법

EXPORT를 사용하여 다른 파일의 코드에서 현재 파일의 기호에 액세스할 수 있도록 합니다.

다른 소스에 있는 symbol의 다른 인스턴스를 사용할 수 있는 경우 [WEAK] 특성을 사용하여 이 다른 인스턴스가 현재 인스턴스보다 우선함을 링커에 알립니다. [WEAK] 특성은 모든 기호 표시 속성과 함께 사용할 수 있습니다.

IMPORT 및 EXTERN도 참조하십시오.

기호 표시에 대한 자세한 내용은 www.infocenter.arm.com의 ARM 아키텍처용 ELF ABI 설명서를 참조하십시오.

예제

        AREA    Example,CODE,READONLY
        EXPORT  DoAdd           ; Export the function name
                                ; to be used by external
                                ; modules.
DoAdd   ADD     r0,r0,r1

내보내기가 중복될 경우 기호 표시가 오버라이드될 수 있습니다. 다음 예제에서는 마지막 EXPORT가 바인딩 및 표시 유형에 대한 우선권을 갖습니다.

        EXPORT  SymA[WEAK]      ; Export as weak-hidden
        EXPORT  SymA[DYNAMIC]   ; SymA becomes non-weak dynamic.
Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IK
Non-Confidential