Engineering/Linux & Shell
소스 컴파일 ↔ 바이너리 패키지 설치방식의 차이점 (Source Compile vs Binary Package)
소스 컴파일 설치
소스 패키지
- 소스 패키지에는 일반적으로 여러 파일이 포함되어 있으며 릴리스를 용이하게 하기 위해 소스 패키지가 일반적으로 패키지 및 압축되어있다.
- Linux에서 가장 일반적으로 사용되는 패키지 압축 형식은 "tar.gz" 이며 소스 패키지를 Tarball 이라고도 한다.
- Tarball은 Linux 시스템 용 패키징 도구로, 소스 패키지를 패키징 및 압축 할 수 있으며, 결과로 압축 된 압축 파일을 Tarball 파일이라고 한다.
소스컴파일 설치방식의 장점
- RPM 파일 없이 소스코드 파일만 제공하는 경우도 많다.
- 소스코드로 직접 설치하면 더 세밀한 설정이 가능하며 기능을 자유롭게 선택할 수 있다.
- 소프트웨어가 컴파일 및 설치되기 때문에 시스템에 보다 적합하고 더 안정적이고 효율적이다.
소스컴파일 설치방식의 단점
- 컴파일 시간이 길기에 설치 시간이 Binary 설치 방식보다 오래 걸린다.
- 설치 과정에서 오류가 보고되면 초보자가 문제를 해결하기가 어렵다.
💡 Compile은 컴퓨터(or VM)에 의해 직접 실행되는 객체 코드로의 변환 프로세스를 의미한다. 컴파일러의 기능은 소스코드를 컴퓨터가 인식하고 실행할 수 있도록 이진 코드로 변환한다.
바이너리 설치
바이너리 패키지 (RPM, YUM)
- 프로그램 설치와 관리가 용이하게 하기 위해 개발된 패키지 형태로 소스 패키지가 성공적으로 컴파일 된 후에 생성된 패키지이다.
- 비슷한 환경에서 컴파일 되어 설치한 프로그램들이 전부(실행파일, 설정파일, 라이브러리 등)을 묶어 그대로 풀어서 설치한다.
- YUM 설치 방식은 RPM 패키지 의존성 문제를 해결한 방식으로 인터넷을 통해 필요한 파일들을 저장소(Repository)에서 의존성이 있는 다른 패키지까지 다운로드 해서 설치하는 방식이다.
바이너리 설치방식의 장점
- 몇가지 명령만으로 패키지 설치, 업그레이드, 쿼리 및 제거를 구현할 수 있다.
- 설치 속도 측면에서 소스컴파일 설치방식보다 훨씬 빠르다.
바이너리 설치방식의 단점
- 컴파일 후에는 소스 코드를 볼 수 없다.
- 기능 선택은 소스패키지만큼 유연하지 않다.
💡 RPM 설치방식은 패키지 의존성에 따라 관련 패키지가 먼저 설치되어 있지 않으면 설치가 진행되지 않는다. 즉, 패키지 설치를 위해서 패키지 필요요소들을 사전에 전부 다운로드 해야 한다.
참조
linux - 소프트웨어 추가 설치하기(RPM, SOURCE CODE, YUM)
https://linuxism.ustd.ip.or.kr/479?category=340926
What is the difference between building from source and using an install package?
linux에서 소스 받아서 설치하기 (linux 폴더 구조)
https://jusunglee.tistory.com/entry/linux에서-소스-받아서-설치하기#바이너리-받아서-설치-하기
(★) 리눅스 패키지 (소스 패키지와 바이너리 패키지)
'Engineering > Linux & Shell' 카테고리의 다른 글
[Linux] 관리자 권한 sudo vs su 차이점 (1) | 2022.03.20 |
---|---|
[Linux] Locate 와 FIND 명령어 차이점 (0) | 2021.12.31 |
Login vs Non-Login Shell (/etc/profile, .bash_profile, .bashrc) (0) | 2021.12.10 |
크론탭(Crontab) 기본 사용법 정리 (0) | 2021.12.03 |
[Linux / OS] Interactive vs Non-Interactive Shell (0) | 2021.11.28 |
댓글