Giới thiệu về Cmake

Cmake là 1 ứng dụng nổi tiếng và quen thuộc với người yêu thích mã nguồn mở. Ứng dụng này có mục đích làm giảm dung lượng các file chia sẻ trên mạng bằng cách tạo ra các file config cần thiết cho project, khi đó người chia sẻ source và người sử dụng chỉ cần chia sẻ những file code mà thôi. Cmake hỗ trợ rất nhiều project của nhiều ngôn ngữ khác nhau, nhiều phiên bản của các IDE nổi tiếng và nhiều option để người dùng lựa chọn.



Nhu cầu thực tế

Lấy 1 thí dụ về project C++ chạy bằng Visual studio: project cần các file như *.sln, *.vcxproj, vcxproj.filters,… chứa thông tin về project, như là project đó cần compile những file nào, solution có bao nhiêu project, project build trên platform nào,… thì Cmake sẽ tạo ra các file đó giùm bạn.

Còn nếu không có Cmake thì sao? Người chia sẻ file sẽ phải tạo ra các file config với mỗi phiên bản IDE, chỉ riêng Visual Studio đã có nhiều phiên bản: VS2008, VS2010, VS2012, VS2013, VS2015. Cộng thêm các ngôn ngữ khác nữa thì số lượng file phải tạo ra quá nhiều. Làm cho dung lượng file chia sẻ tăng lên đáng kể.

Cách sử dụng

Cmake có 2 loại: Command line và GUI, command line dùng dòng lệnh để truyền tham số, còn GUI thì bạn chỉ việc click và click. Mình thích GUI hơn vì không sợ truyền sai tham số, mọi thứ lại dễ nhìn, sờ sờ ngay trước mắt.


Giao diện của chương trình Cmake GUI:
– 1. Thư mục chứa source mà bạn download về
– 2. Thư mục chứa các file output, ở đây là các file config của project như là *.sln, *.vcxproj, vcxproj.filters,…
– 3. Ấn nút Generate để tạo ra các file config với nhiều tuỳ chọn khác nhau trên các IDE. Chương trình sẽ đọc nội dung của file CMakeLists.txt, rồi kiểm tra các đường dẫn, tạo ra các tuỳ chọn khác,…
Thí dụ C++ thì sẽ chọn phiên bản Visual Studio, tạo ra các mode Debug, Release, chọn các lib bổ trợ,… thì tuỳ theo từng lib khác nhau mình sẽ viết kỹ hơn. Nếu bước này xảy ra lỗi thì phải kiểm tra để khắc phục.
– 4. Sau khi lựa chọn xong các option thì ấn nút Generate để tạo các file config cho project.

Build project mẫu

Ngay trong lúc viết bài này mình đang viết bài về lib Zxing nên mình sẽ lấy lib Zxing làm thí dụ cho việc build bằng Cmake luôn. Hiện tại phiên bản mình đang sử dụng là Cmake 3.4.1.
1. Đầu tiên download source code Zxing cpp về. Giải nén ra 1 thư mục nào đó, mình chọn thư mục C:\Zxing-cpp

2. Mở chương trình Cmake GUI, chọn thư mục chứa source là C:\Zxing-cpp
3. Chọn thư mục chứa file output là C:\Zxing-cpp\build. Thư mục này các bạn nên chọn nằm trong thư mục source hoặc ngay bên cạnh cho tiện.


4. Ấn nút Generate để chương trình kiểm tra các thông số


5. Nếu bước 4 thành công thì ấn nút Generate để tạo file output


Kết quả sau khi build thành công, mở file zxing.sln để build project

Lưu ý là chương trình có lưu các thông số. Chúc các bạn thành công.

Download Cmake

Leave a Reply