우분투 20.04 를 설치해보았다. UI가 너무x3 예뻐진 것이다.
원래 기존에 Desktop도 리눅스 우분투를 사용하는 나는 이를 설치를 안 할 수 없었다.
요즘 윈도우에서 동작하는 클라이언트 프로그램에 대한 서버를 만드느라 윈도우에서 개발을 하다보니 Visual Studio를 이용한 개발이 한창이었다. 그런데 이제는 우분투에서는 Visual Studio가 없으니 CLion으로 갈아타야하는데, CLion은 내가 알기로는 CMake 설정을 직접하는 형태인 것이다. 그래서 CMake를 일단 서버에 설치를 해야한다.
그래서 이번 시간에는 CMake 설치하는 시간을 갖도록 하겠다.
CMake를 설치하기 이전에 CMake가 무엇인지 아주아주 간단하게 정리를 해보겠다.
1. CMake란?
CMake를 논하기 이전에 Make가 무엇인지, C언어 계열의 프로그램 작성 방법에 대해서 알아야한다.
C 계열의 프로그램 작성 방법
위의 그림과 같은 방법으로 프로그램이 작성이 된다. 예에서 나온 그림을 gcc 컴파일 명령어를 통해 나타내면 다음과 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
### c언어
# 각 소스 프로그램으로 부터 object 목적 파일 생성.
gcc -c -o ./main.o ./main.c
gcc -c -o ./func.o ./func.c
# 목적 파일들을 모두 링크!
gcc -o ./program.exe ./main.o ./func.o
### c++언어
# 각 소스 프로그램으로 부터 object 목적 파일 생성.
g++ -c -o ./main.o ./main.cpp
g++ -c -o ./func.o ./func.cpp
# 목적 파일들을 모두 링크!
g++ -o ./program.exe ./main.o ./func.o
|
cs |
gcc 혹은 g++ 컴파일러를 이용하여 컴파일을 진행할 경우 위처럼 각 소스 프로그램마다의 목적 파일을 생성하고 이를 연결해주는 링크 작업을 진행한다.
Make
자! 그러면 Make를 설명할 때가 되었다. Make는 위의 명령들을 순차적으로, 자동적으로 실행하여 빌드하도록 돕는 파일 관리 유틸이다.
CMake
CMake 는 멀티플랫폼으로 사용할 수 있는 Make의 대용품을 만들기 위한 오픈 소스 프로젝트라고 하는데, 사실 따지고 보면 위의 Make 파일을 만들어주는 유틸인 것이다. 즉, (빌드를 돕는) (Make를 만들어내는) 그것이 바로 CMake인 것이다.
정말 간단하게 말해서 CMake는 Make가 잘 동작하도록 도와주고 Make는 컴파일을 위한 명령들이 순차적으로 실행될 수 있도록 돕는 것이다.
2. 설치 방법
2-1 . Cmake 3.18.4 버전을 따로 설치할 것이니 기존의 설치가 존재한다면 지운다!
sudo apt purge cmake
2-2 . 필요한 패키지를 설치한다.
sudo apt install wget build-essential
2-3 . Cmake 빌드를 위한 OpenSSL을 설치한다.
wget https://www.openssl.org/source/openssl-1.1.1h.tar.gz # oepnssl 다운로드
tar xzvf ./openssl-1.1.1h.tar.gz # 압축 해제
cd openssl-1.1.1h # 이동
./config # 빌드 전 config
make
make test # 빌드 준비
sudo make install # 빌드 시작
2-4 . Cmake 3.18.4 를 다운 받아 설치한다.
위 사이트에서 다운로드 받은 뒤 압축을 푼 후,
./bootstrap # 컴파일 환경 자동 설정
make # 빌드
sudo make install 실행 파일을 설치.
cmake 명령을 쳤을 때, 아래와 같이 나온다면 cmake 설치에 성공한 것이다.
위와 같은 경로에 설치되어 있는 것을 확인할 수 있다.
'리눅스:Ubuntu > 개발 관련' 카테고리의 다른 글
Ubuntu 20.04 에서 Apache2 Vhost 설정(추가 정리) (0) | 2021.10.05 |
---|---|
Ubuntu 20.04에서 Apache2 Vhost 설정 및 Rewrite 설정 (0) | 2020.11.11 |
Ubuntu 20.04에서 Apache2, 포트 변경, php 서버 구축하기. (0) | 2020.11.10 |
[Error] SSH 접속 시 Permission denied (publickey) (1) | 2020.10.24 |
[Error] sshd: no hostkeys available -- exiting. (0) | 2020.10.24 |