7.3.1. 라이브러리 생성기 명령 행 옵션

라이브러리에 파일을 추가하거나 라이브러리에 있는 파일을 수정할 때 사용되는 armar 명령의 구문은 다음과 같습니다.

armar [--help] [--create] [--diag_style arm|ide|gnu] [-c] [-d] [-m] [-q] [-r] [-u] [--vsn] [-v] [--via option_file] [{[-a] | [-b] | [-i]} {pos_name}] library [file_list]

파일이나 라이브러리 정보를 추출할 때 사용되는 armar 명령의 구문은 다음과 같습니다.

armar [--help] [--diag_style arm|ide|gnu] [-C] [--entries] [-p] [-t] [-s] [--sizes] [-T] [--vsn] [-v] [--via option_file] [-x] [--zs] [--zt] library [file_list]

옵션 설명:

-a

library의 새 파일을 pos_name 파일 뒤에 배치합니다.

이 옵션은 같은 명령 행에 -b(또는 -i)가 포함될 경우 무효화됩니다.

-b

library의 새 파일을 pos_name 파일 앞에 배치합니다.

같은 명령 행에 -a가 포함된 경우 이 옵션이 -a를 우선합니다.

-i

library의 새 파일을 pos_name 구성원앞에 배치합니다(-b와 동등한 효과).

동일한 명령 행에 -a가 포함된 경우 이 옵션이 -a를 우선합니다.

pos_name

상대적 위치 지정을 위해 사용되는 기존 라이브러리 구성원 이름. 이 이름은 -a, -b-i 옵션과 함께 제공되어야 합니다.

-C

추출 작업 시 라이브러리 생성기가 기존 파일을 유사한 이름의 파일로 교체하지 않도록 지시합니다. 이 옵션은 -T 옵션을 함께 사용하는 경우, 잘린 파일 이름으로 인해 동일한 접두사가 있는 다른 파일로 교체되는 것을 방지할 때 유용합니다.

-c

보통 라이브러리가 생성될 때 표준 오류로 작성된 진단 메시지를 표시하지 않습니다.

--create

library가 이미 존재하더라도 새 라이브러리를 만듭니다.

-d

library에서 하나 이상의 파일을 삭제합니다.

--diag_style arm|ide|gnu

경고 및 오류 메시지 형식을 변경합니다. --diag_style arm이 기본값이고, --diag_style gnugcc에서 보고된 형식과 일치하며, --diag_style ide는 Microsoft Visual Studio에서 보고된 형식과 일치합니다.

--entries

library에 정의된 모든 엔트리 포인트를 나열합니다. 목록의 형식은 다음과 같습니다.

ENTRY at offset num in section name of member
file_list

처리할 파일의 목록입니다. 각 파일은 경로와 이름으로 완전히 지정됩니다. 경로는 절대 경로, 드라이브 및 루트 기준 경로 또는 현재 디렉토리 기준 경로일 수 있습니다.

라이브러리에 있는 파일 이름과 비교할 때에는 경로 끝에 표시된 파일 이름만 사용됩니다. 둘 이상의 피연산자가 동일한 파일 이름으로 끝나는 경우에는 결과가 지정되지 않습니다. 파일을 지정하려면 와일드카드 (*?)를 사용할 수 있습니다.

파일 중 하나가 라이브러리인 경우 armar은 입력 라이브러리의 모든 구성원을 대상 라이브러리로 복사합니다. 명령 행의 항목 순서는 그대로 유지됩니다. 그러므로 라이브러리 파일을 제공하는 것은 라이브러리의 모든 구성원을 라이브러리에 저장된 순서대로 제공하는 것과 논리적으로 동등한 개념입니다.

--help

armar 명령에 대한 자세한 내용을 온라인으로 제공합니다.

library

라이브러리 파일의 경로 이름입니다.

-m

파일을 이동합니다. -a, -b 또는 -ipos_name과 함께 지정되면 파일을 새 위치로 이동합니다. 그렇지 않은 경우 파일을 라이브러리 끝으로 이동합니다.

-n

아카이브 심볼 테이블을 표시하지 않습니다. 이 옵션은 라이브러리가 오브젝트 라이브러리가 아닌 경우에 사용됩니다.

-p

library에 있는 파일 내용을 stdout로 출력합니다.

-q

-r의 별칭입니다.

-r

library의 파일을 대체 또는 추가합니다. library가 없는 경우 새 라이브러리 파일이 생성되고 진단 메시지가 표준 오류로 작성됩니다.

file_list가 지정되지 않고 라이브러리가 존재하는 경우 결과가 정의되지 않습니다. 기존 파일을 대체한 파일 때문에 라이브러리 순서가 변경되지는 않습니다.

-u 옵션을 사용하는 경우 수정 날짜가 라이브러리 파일 이후인 파일만 대체됩니다.

-a, -b 또는 -i 옵션을 사용하면 pos_name을 반드시 표시하고 새 파일이 pos_name 이후(-a) 또는 이전(-b 또는 -i)에 배치되도록 지정해야 합니다. 그렇지 않은 경우 새 파일이 마지막에 추가됩니다.

-t

library 목차를 출력합니다. file_list를 통해 지정한 파일이 작성된 목록에 포함됩니다. file_list를 지정하지 않으면 라이브러리에 있는 모든 파일이 아카이브 순서대로 포함됩니다.

-s

아카이브 심볼 테이블을 다시 생성합니다.

--sizes

library에 있는 각 구성원의 Code, RO Data, RW Data, ZI DataDebug 크기를 나열합니다. 예를 들면 다음과 같습니다.

Code    RO Data    RW data    ZI Data    Debug   Object Name
 464          0          0          0     8612   app_1.o
3356          0          0      10244    11848   app_2.o
3820          0          0      10244    20460   TOTAL
-T

파일의 라이브러리 이름이 파일 시스템에서 지원하는 길이보다 긴 경우에 추출된 파일 이름을 자를 수 있습니다. 기본적으로 너무 긴 이름의 파일을 추출하면 오류가 발생하여, 진단 메시지가 작성되고 파일이 추출되지 않습니다.

-u

이전 파일을 업데이트합니다. -r 옵션과 함께 사용할 경우 library 내의 파일은 대체 파일의 수정 시간이 라이브러리 내 파일의 최종 수정 시간과 같거나 이후인 경우에만 대체됩니다.

--via option_file

라이브러리 생성기가 option_file에서 옵션을 가져오도록 지시합니다. via 파일 작성에 대한 자세한 내용은 RealView Compilation Tools 버전 3.0 컴파일러 및 라이브러리 설명서를 참조하십시오.

-v

자세하게 출력합니다.

출력은 그밖에 어떤 옵션을 사용하는지에 따라 달라집니다.

-d, -r 또는 -x

라이브러리 생성, 구성 파일 및 유지 활동에 대해 파일별로 자세한 설명을 작성합니다.

-p

파일 자체를 stdout에 쓰기 전에 표준 출력에 파일 이름을 씁니다.

-t

라이브러리 내 파일에 대한 자세한 정보 목록이 포함됩니다.

-x

각 추출 앞의 파일 이름을 출력합니다.

--vsn

표준 오류에 버전 번호를 인쇄합니다.

-x

file_list의 파일을 library에서 추출합니다. library의 내용은 변경되지 않습니다. 파일 피연산자를 제공하지 않으면 library에 있는 모든 파일이 추출됩니다. 라이브러리에서 추출된 파일의 파일 이름이 대상 디렉토리에서 지원하는 길이보다 긴 경우의 결과는 정의되지 않습니다.

--zs

심볼 테이블을 표시합니다.

--zt

library에 있는 구성원 크기 및 엔트리 포인트를 나열합니다. 출력 형식에 대해서는 --sizes--entries를 참조하십시오.

Note

일반적인 연산에서는 -a, -b, -C, -I, -m, -T, -u-v 옵션이 필요하지 않습니다.

라이브러리 순서에 관련된 옵션(예: -a, -b, -i-m)은 심볼 테이블이 없는 라이브러리를 ARM 도구에서 사용할 수 없으며, 심볼 테이블이 있는 경우 순서는 의미가 없기 때문에 관련이 없습니다. 그렇지만 같은 명령 행에 -a-b(또는 -i)를 포함하는 경우에는 우선순위 규칙을 참조하십시오.

라이브러리는 업데이트되기보다 다시 빌드되기 때문에, 라이브러리 업데이트에 관련된 옵션(-C-u)은 실제로는 거의 사용되지 않습니다.

Copyright © 2002-2006 ARM Limited. All rights reserved.ARM DUI 0206GK
Non-Confidential