반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- Pyverilog 설치
- linux makefile 작성
- pytest-pythonpath 설치 오류
- 남산업힐
- AMBA
- Pyvrilog tutorial
- Data HAzard
- Pyverilog 튜토리얼
- linux c++ 컴파일
- 컨벌루션 연산
- DNN 가속기
- Makefile compile
- Pyverilog 실행
- 데이터 해저드
- 클럭 게이팅
- linux c 컴파일
- CDC
- makefile
- 딥러닝 가속기
- DNN Accelerator
- pyverilog 설치 오류
- systolic array
- pygraphviz 설치 오류
- CUDA
- gpgpu-sim
- gcc 컴파일
- CLOCK GATING
- 대구 반도체 설계기업 특화
- Design DNN Accelerator
- 이진수 곱셈 알고리즘
Archives
- Today
- Total
오늘은 맑음
linux 정적 라이브러리 사용 본문
반응형
Linux 정적 라이브러리 사용
이전 시간에는 hello.cpp 프로젝트를 compile해 보았습니다.
하나의 프로젝트를 compile해 보았는데, 실제로는 하나의 프로젝트만 사용하진 않죠?
그래서 이번시간에는 라이브러리를 사용해 보겠습니다.
정적 라이브러리란 동작을 위한 모든 코드가 실행 바이너리 안에 존재하는 것을 의미합니다.
테스트 해 보기 위해 다음과 같은 프로젝트들을 만들겠습니다.
#hello.cpp
#goodbye.cpp
#greeting.h
#main.cpp
위와 같이 2개의 함수를 갖는 cpp파일과 이 함수를 정의한 헤더파일, 그리고 함수를 동작시키는 main프로젝트로 나뉘었습니다. 2개의 함수는 각각 main프로젝트에서 include되어 호출될 수 있습니다.
이제 compile을 해볼까요?
gcc -c hello.cpp
gcc -c goodbye.cpp
위의 두 명령어를 실행시키면 hello.o와 goodbye.o의 오브젝트 파일이 생성됩니다.
이제 헤더파일과 오브젝트 파일들을 함께 compile하도록 하겠습니다.
ar rcv staticlib.a hello.o goodbye.o
이름은 staticlib로 지어 위의 명령어를 실행하면 staticlib.a라는 파일이 생성됩니다.
g++ -o greet main.cpp staticlib.a
g++을 이용하여 실행파일의 이름을 greet로 지어 compile을 진행하면 greet이라는 실행파일이 생성됩니다.
./greet
위의 명령어를 실행시키면
다음과 같은 결과가 출력됩니다.
반응형
'Linux' 카테고리의 다른 글
vim 상하 좌우 분할 (0) | 2019.10.18 |
---|---|
[Linux] makefile 사용해서 compile하기 (0) | 2019.03.13 |
[Linux] linux에서 gcc(c/c++) compile하기 (0) | 2019.03.12 |
linux 공유 라이브러리 (0) | 2017.12.08 |
정적 라이브러리 (0) | 2017.12.08 |
Comments