링크 ux 정적 라 이브 러 리 생 성 및 사용
5449 단어 linux
라 이브 러 리 는 소프트웨어 구성 요소 기술 로 라 이브 러 리 안에 데이터 와 함 수 를 밀봉 했다.
라 이브 러 리 의 사용 은 프로그램 을 모듈 화 할 수 있다.
Windows 시스템 은 정적 링크 라 이브 러 리(.lib 파일)와 동적 링크 라 이브 러 리(.dll 파일)를 포함한다.
Linux 는 보통 라 이브 러 리 파일 을/usr/lib 또는/lib 디 렉 터 리 에 저장 합 니 다.
Linux 라 이브 러 리 파일 이름 은 접두사 lib,라 이브 러 리 이름,접두사 3 부분 으로 구성 되 어 있 으 며,동적 링크 라 이브 러 리 는.so 가 가장 접두사 이 며,정적 링크 라 이브 러 리 는 보통.a 를 접두사 로 합 니 다.
프로그램 에서 정적 라 이브 러 리 와 동적 라 이브 러 리 를 사용 할 때 불 러 오 는 순서 가 다 릅 니 다.
정적 라 이브 러 리 의 코드 는 컴 파일 할 때 복사 하 는 응용 프로그램 에서 이러한 장점 은 컴 파일 시간 을 절약 하 는 것 이다.
동적 연결 라 이브 러 리 가 실 행 된 후에 라 이브 러 리 함 수 를 호출 할 때 만 불 러 옵 니 다.
정적 라 이브 러 리 생 성 및 사용:
1.헤더 파일 종류 에서 정적 라 이브 러 리 에서 내 보 낸 함 수 를 설명 합 니 다.
2.원본 파일 종류 에서 정적 라 이브 러 리 에서 내 보 내 는 함 수 를 실현 합 니 다.
3.원본 파일 을 컴 파일 하여 실행 가능 한 코드 를 생 성 합 니 다.
4.실행 가능 한 코드 가 있 는 대상 파일 을 정적 라 이브 러 리 에 추가 하고 정적 라 이브 러 리 를 시스템 의 기본 저장 라 이브 러 리 파일 디 렉 터 리 에 복사 합 니 다.
다음은 하나의 예 를 통 해 설명 합 니 다.my lib.h 종 류 는 정적 라 이브 러 리 가 사용자 에 게 제공 하 는 함수 에 대한 설명 입 니 다.my lib.c 는 my lib.h 종 성명 의 함 수 를 실현 합 니 다.
헤더 파일:mylib.h
#ifndef _MYLIB_H_
#define _MYLIB_H_
void weclome(void);
void outString(const char *str);
#endif
원본 파일:mylib.c
#include "mylib.h"
#include
void welcome(void)
{
printf("welcome to libmylib
");
}
void outString(const char *str)
{
if(str != NULL)
printf("%s
", str);
}
1>mylib.c 를 컴 파일 하여 대상 파일 생 성:gcc-o mylib.o-c mylib.c
2>대상 파일 을 정적 라 이브 러 리 에 추가 합 니 다:ar rcs libmylib.a mylib.o
3>정적 라 이브 러 리 를 Linux 라 이브 러 리 디 렉 터 리(/usr/lib 또는/lib)에 복사 합 니 다.
cp libmylib.a /usr/lib/libmylib.a
라 이브 러 리 함 수 를 호출 하 는 테스트 프로그램 test.c 를 작성 합 니 다.
#include "mylib.h"
#include
int main(void)
{
printf("create and use library:
");
welcome();
outString("it's successful
");
return 0;
}
4>정적 라 이브 러 리 컴 파일 사용:gcc-o test.c-lmylib
컴 파일 할 때 접두사 와 접 두 사 를 달 필요 가 없 음 을 주의 하 십시오.
5>실행 가능 한 프로그램 테스트 실행:./test
create and use library:
welcome to libmylib
it's successful
Linxu 에서 AR 명령 을 사용 하여 정적 라 이브 러 리 를 만 들 고 수정 할 수 있 습 니 다.
이것 은 Liux 에서 man ar 에서 단번에 인 자 를 얻 을 수 있 습 니 다.여기 서 자주 사용 하 는 몇 가지 것 을 설명 합 니 다.
d:라 이브 러 리 에서 구성원 파일 을 삭제 합 니 다.
r:라 이브 러 리 에 구성원 파일 을 추가 하고 존재 하면 교체 합 니 다.
c:라 이브 러 리 를 만 듭 니 다.
s:AR 명령 이 라 이브 러 리 내용 을 수정 하 든 말 든 라 이브 러 리 기호 표를 다시 만 들 도록 강제 합 니 다.
다른 명령 은 사용 할 때 다시 man.
위의 다섯 단 계 는 기본 적 인 사용 이 고 필요 하 다 면 깊이 공부 해 야 한다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
용감한 바로 가기 및 우분투 응용 프로그램안녕하세요 여러분, 이 기사에서는 모든 사이트에서 pwa를 생성하고 실행기 응용 프로그램으로 추가하는 방법을 설명하고 싶습니다. 일부 웹사이트는 PWA로 설치를 허용하지 않지만 유사한 애플리케이션을 원합니다. 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.