$ gcc -c filename.c 컴파일에 성공하면 확장자가 .o인 obj파일 (filename.o)이 생성된다.
$ ar rcs libfile.a filename.o라이브러리 작성에 사용하는 명령어는 ar 이다. 
위와 같이
<ar 옵션> <생성하고자 하는 라이브러리의 이름> <오브젝트 파일들의 이름>을 나열한후 실행한다.
윈도우에서 라이브러리 파일의 확장자는 .lib이지만 리눅스에서는 .a 확장자를 지닌다.
r : 지정한 아카이브로 모듈(obj파일) 추가. 새로운 obj파일이면 추가, 기존 파일이면 치환.
c : 아카이브 (라이브러리 파일) 생성.
s : 아카이브 인덱스를 생성.
아카이브 인덱스를 생성하지 않으면 링크 속도가 느려지고, 시스템 환경에 따라서는 에러가 발생.
아카이브 인덱스는 nm -s로 조회할 수 있다.
v : verbose mode(동작 내용 출력). 파일 크기나 갱신 시각 등 자세한 정보도 출력.
d :  아카이브 모듈을 삭제. 삭제할 파일이 없다면 아카이브를 건들지 않음.
ar 명령은 정적 라이브러리를 생성할 때뿐만 아니라, 정적 라이브러리의 기능을 부분적으로 변경하고자 할 경우에도 사용할 수 있다.
라이브러리가 모두 오픈 소스로 구성되어 있지 않은 이유 등으로 정적 라이브러리를 처음부터 다시 작성할 수 없는 경우에 편리하게 이용될 수 있다.