Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Cách Biên Dịch & Cài Đặt File TAR.GZ & TAR.BZ2 Trên Ubuntu Linux

Khác với Windows, cài phần mềm trên Linux có thể phức tạp hơn. Trừ khi phần mềm đã ở dạng gói hoặc trong repository cài bằng một dòng lệnh, bạn thường phải biên dịch và cài từ file .TAR.GZ hoặc .TAR.BZ2.

Điều này có thể thành ác mộng, nhưng nếu tuân thủ quy tắc thì không. Nếu bạn có file nén khó nhằn cần cài, phương pháp sau sẽ tạo gói, cài gói đó và cung cấp cách gỡ sạch sau qua trình quản lý gói. Chuẩn bị dòng lệnh, hít thở sâu...

Tarballs Của Thép

File .TAR.GZ/BZ2 là tarball nén (đuôi mở rộng là .TAR) chứa source code gốc của ứng dụng. Cài đặt yêu cầu biên dịch, xử lý và link các file này sao cho Ubuntu có thể chạy chương trình.

Định dạng tarball được chuẩn hóa năm 1988 (và lại 2001) và vẫn dùng rộng rãi trên Linux và Windows để phân phối phần mềm. Ban đầu tarball thiết kế cho backup dữ liệu lên thiết bị băng — không phải bạn làm điều đó.

Nếu chưa dùng dòng lệnh Linux, đừng lo, các lệnh thẳng tiến và liền mạch.

Chuẩn Bị Hệ Thống

Bạn cần cài gói build-essential để tạo gói từ source và checkinstall để thêm vào trình quản lý gói để gỡ dễ dàng. Làm nhanh qua console: mở Terminal (Applications, Accessories, Terminal) gõ:

sudo apt-get install build-essential checkinstall

Đợi tải và cài xong, bạn cũng có thể cài phần mềm quản lý phiên bản để nâng cấp sau, nhưng làm sau cũng được. Ba gói này đủ:

sudo apt-get install subversion git-core mercurial

Tiếp theo, cần thư mục chung để build gói. Bạn để đâu cũng được, miễn writable. Tài liệu Ubuntu khuyến nghị

/usr/local/src

ta dùng đó:

sudo chown $USER /usr/local/src

Đảm bảo writable:

sudo chmod u+rwx /usr/local/src

Cuối cùng cài apt-file để giải quyết dependency:

sudo apt-get install apt-file

Bạn có thể nhận popup yêu cầu update apt-file, nếu không chạy lệnh sau và đợi xong:

sudo apt-file update

Làm xong, bạn không bao giờ cần làm lại — hệ thống sẵn sàng cho mọi tarball.

Giải Nén & Cấu Hình

Giả sử bạn đã tải file .TAR.GZ bí ẩn, đầu tiên di chuyển nó đến thư mục build (tôi dùng /usr/local/src). Dùng file browser bình thường, xong mở Terminal mới.

Chuyển đến thư mục build:

cd /usr/local/src

Giải nén archive. Với .TAR.GZ:

tar -xzvf <filename>.tar.gz

Với .TAR.BZ2:

tar -xjvf <filename>.tar.bz2

Nếu tốt, bạn thấy danh sách file giải nén dài. Đừng đóng Terminal, chưa xong.

Tại đây, tôi khuyên mạnh bạn điều hướng đến thư mục archive vừa tạo (bằng file browser) và mở README hoặc INSTALL nếu có. Nếu phần mềm yêu cầu phương pháp khác, file này là chìa khóa. Bạn tiết kiệm rất nhiều rắc rối.

Bạn cũng có thể chọn tùy chọn cài khác tùy phần mềm, INSTALL hoặc README sẽ quy định. File có thể không có đuôi, nhưng là plain text, mở bằng Gedit hoặc editor bất kỳ.

Quy tắc chung, các lệnh sau cài phần mềm với phương pháp mặc định.

Tarball giải nén ra thư mục trùng tên file, cd vào thư mục đó:

cd /usr/local/src/<extracted folder>

Thay <extracted folder> bằng tên thư mục archive tạo. Tiếp theo cấu hình source:

./configure

Lưu ý: Nếu phần mềm không có file configure, bạn có thể thử bỏ qua thẳng mục Build & Install, nhưng đọc INSTALL/README trước.

Nếu lỗi liên quan autoconf, cài nó:

sudo apt-get install autoconf

Rồi chạy ./configure lại.

Lệnh này kiểm tra xem bạn có đủ gói cần thiết không. Dùng apt-file (cài trước) để lấp đầy chỗ trống.

Nếu lỗi (ví dụ configure: error: Library requirements ... not met), tìm file thiếu ở trên lỗi, dùng apt-file search:

apt-file search <filename>.<extension>

Nó báo file cần thiết ở gói nào, bạn cài gói đó:

sudo apt-get install <package>

Không lúc nào cũng xảy ra, nhưng rất hữu ích khi thiếu dependency.

Khi chắc đã đủ gói (nếu cần), chạy ./configure lại.

Nếu tốt, bạn thấy config.status: creating Makefile — chúc mừng, gần xong! Nhiều người bỏ cuộc trước đây, nhưng bạn không phải.

Build & Install

Trong cùng Terminal, gõ:

make

Nghỉ ngơi, uống cà phê, hít thở. Tùy kích thước cài, có thể mất một lúc.

Bây giờ cài chương trình:

sudo checkinstall

Làm theo prompt trên màn hình, thêm mô tả phần mềm, Enter ở màn hình này:

Nếu tốt, bạn thấy Installation Successful. Tự khen mình. Bạn đã làm tốt.

Phần mềm giờ cài ở /usr/local/bin và bạn chạy được từ đó không vấn đề gì.

Bạn làm hết quá trình? Không dễ hơn chờ gói hoặc lấy từ repo? Có thể bạn thấy... dễ? Cho chúng tôi biết trong bình luận.