>  기사  >  운영 및 유지보수  >  Linux에서 .a 파일이란 무엇입니까?

Linux에서 .a 파일이란 무엇입니까?

WBOY
WBOY원래의
2022-07-14 16:06:213184검색

Linux에서 ".a" 파일은 정적 링크 라이브러리 파일입니다. 정적 링크 라이브러리 파일은 실행 파일에 링크되어 실행 파일의 일부가 되는 호출되는 함수 또는 프로세스를 의미하며, 동적링크에 의해 호출된 코드는 응용프로그램의 실행파일에 복사되지 않고, 호출된 함수에 대한 설명정보가 추가됩니다.

Linux에서 .a 파일이란 무엇입니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

Linux에서 .a 파일은 무엇인가요?

.a 파일은 LINUX 시스템의 정적 링크 라이브러리 파일입니다.

정적 연결이란 호출할 함수나 프로세스를 실행 파일에 연결하여 실행 파일의 일부가 되는 것을 말합니다. 여러 프로그램이 동일한 함수를 호출하면 메모리에 해당 함수의 복사본이 여러 개 있게 되어 귀중한 메모리 리소스가 낭비됩니다. .so 파일은 공유 라이브러리 파일입니다(동적으로 연결됨). 동적 연결에 의해 호출된 함수 코드는 응용 프로그램의 실행 파일에 복사되지 않고 호출된 함수에 대한 설명 정보(종종 일부 재배치 정보)만 추가됩니다. 응용 프로그램이 로드될 때만 메모리가 실행되기 시작합니다. 운영 체제의 관리 하에 응용 프로그램과 해당 .so 사이에 링크 관계가 설정됩니다.

.a 파일은 여러 .o 파일의 조합입니다. .o 파일은 객체 파일이며 그 안에 포함된 내용은 01과 같은 기계 실행 가능 명령어입니다. 프로그램을 실행하려면 링크가 필요합니다. 링크는 여러 .o 파일을 실행 파일로 연결하는 것입니다. .

Expand Knowledge

.o는 Windows에서 컴파일된 obj 파일과 동일하며 일반적으로 대상 파일로 알려져 있는 객체입니다.

.a는 Windows VC에서 컴파일된 lib 파일과 동일합니다. , 일반적으로 정적 라이브러리 파일로 알려져 있습니다. .

.o 파일은 링크 파일이고, .a는 .o 파일에 의해 생성되는 정적 라이브러리 파일로, 외부 프로그램에 대한 기능과 인터페이스를 제공합니다.

.o 파일 생성:

gcc -c test.o test.c

.a 파일 생성:

ar cqs test.a test.o

.o는 Windows의 obj 파일과 동일합니다. 하나의 .c 또는 .cpp 파일은 하나의 .o 파일에 해당합니다.

.a는 여러 개의 .o입니다. 함께 정적 연결, 즉 STATIC 모드에 사용됩니다. 여러 .a를 연결하여 exe 실행 파일을 생성할 수 있습니다

.so는 Windows dll과 유사하게 동적 연결에 사용되는 공유 개체이며 로드만 가능합니다. 사용 시

추천 학습: Linux 비디오 튜토리얼

위 내용은 Linux에서 .a 파일이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.