Cách biên dịch và cài đặt từ nguồn trên Ubuntu
Ubuntu và các bản phân phối Linux khác có kho lưu trữ gói rộng rãi để giúp bạn tránh những rắc rối khi tự mình biên dịch mọi thứ. Tuy nhiên, đôi khi bạn sẽ tìm thấy một ứng dụng tối nghĩa hoặc một phiên bản mới của chương trình mà bạn sẽ phải biên dịch từ nguồn.
Bạn không phải là một lập trình viên để xây dựng một chương trình từ nguồn và cài đặt nó trên hệ thống của bạn; bạn chỉ cần biết những điều cơ bản Chỉ với một vài lệnh, bạn có thể xây dựng từ nguồn như dân chuyên nghiệp.
Cài đặt phần mềm cần thiết
Cài đặt gói xây dựng cần thiết trong kho gói của Ubuntu sẽ tự động cài đặt phần mềm cơ bản mà bạn sẽ cần biên dịch từ nguồn, như trình biên dịch GCC và các tiện ích khác. Cài đặt nó bằng cách chạy lệnh sau trong một thiết bị đầu cuối:
sudo apt-get install build-Essential
Nhập Y và nhấn Enter để xác nhận cài đặt khi được nhắc.
Nhận gói nguồn
Bây giờ bạn sẽ cần mã nguồn của ứng dụng bạn muốn. Các gói này thường nằm trong các tệp nén có phần mở rộng tệp .tar.gz hoặc .tar.bz2.
Ví dụ: chúng ta hãy thử biên dịch Pidgin từ nguồn - có thể có một phiên bản mới hơn chưa được đóng gói và chúng tôi muốn nó ngay bây giờ. Xác định vị trí tệp .tar.gz hoặc .tar.bz2 của chương trình và lưu nó vào máy tính của bạn.
Một .tar.gz hoặc .tar.bz2 giống như một tệp .zip. Để sử dụng nó, chúng tôi sẽ phải trích xuất nội dung của nó.
Sử dụng lệnh này để trích xuất tệp .tar.gz:
tập tin tar -xzvf.tar.gz
Hoặc sử dụng lệnh này để trích xuất tệp .tar.bz2:
tập tin tar -xjvf.tar.bz2
Bạn sẽ kết thúc với một thư mục có cùng tên với gói mã nguồn của bạn. Sử dụng lệnh cd để nhập nó.
Giải quyết phụ thuộc
Khi bạn đang ở trong thư mục giải nén, hãy chạy lệnh sau:
./ cấu hình
(Lưu ý rằng một số ứng dụng có thể không sử dụng ./có thể
(Phần ./ bảo shell Bash nhìn vào bên trong thư mục hiện tại cho tập tin cấu hình của Cameron và chạy nó. Nếu bạn bỏ qua phần usr / thùng.)
Lệnh ./cool kiểm tra hệ thống của bạn để biết phần mềm cần thiết để xây dựng chương trình.
Trừ khi bạn may mắn (hoặc đã có rất nhiều gói yêu cầu trên hệ thống của bạn), bạn sẽ nhận được thông báo lỗi, cho biết bạn sẽ cần cài đặt một số gói nhất định. Ở đây, chúng tôi thấy một thông báo lỗi cho biết các tập lệnh intltool không có trên hệ thống của họ. Chúng ta có thể cài đặt chúng bằng lệnh sau:
sudo apt-get cài đặt intltool
Sau khi cài đặt phần mềm cần thiết, hãy chạy lại lệnh ./cool. Nếu bạn cần cài đặt phần mềm bổ sung, hãy lặp lại quy trình này với sudo apt-get cài đặt lệnh cho đến khi ./mình hoàn thành thành công. Không phải mọi gói yêu cầu sẽ có tên chính xác mà bạn thấy trong thông báo lỗi - bạn có thể cần Google thông báo lỗi để xác định các gói được yêu cầu.
Nếu phiên bản cũ hơn của chương trình bạn đang cố biên dịch đã có trong kho phần mềm của Ubuntu, bạn có thể gian lận với sudo apt-get build-dep chỉ huy. Ví dụ, nếu tôi chạy sudo apt-get pidgin xây dựng, apt-get sẽ tự động tải xuống và cài đặt tất cả các phụ thuộc mà tôi cần để biên dịch Pidgin. Như bạn có thể thấy, nhiều gói bạn sẽ cần kết thúc bằng -nhà phát triển.
Sau khi hoàn thành thành công, bạn đã sẵn sàng biên dịch và cài đặt gói.
Biên dịch và cài đặt
Sử dụng lệnh sau để biên dịch chương trình:
chế tạo
Quá trình này có thể mất một chút thời gian, tùy thuộc vào hệ thống của bạn và quy mô của chương trình. Nếu ./mình hoàn thành thành công, không nên có bất kỳ vấn đề nào. Bạn sẽ thấy các dòng cuộn văn bản khi chương trình biên dịch.
Sau khi lệnh này kết thúc, chương trình được biên dịch thành công - nhưng nó không được cài đặt. Sử dụng lệnh sau để cài đặt nó vào hệ thống của bạn:
sudo thực hiện cài đặt
Nó có thể sẽ được lưu trữ dưới / usr / local trên hệ thống của bạn. / usr / local / bin là một phần của đường dẫn hệ thống của bạn, điều đó có nghĩa là chúng ta chỉ cần gõpidginVào một thiết bị đầu cuối để khởi chạy Pidgin mà không có sự ồn ào.
Đừng xóa thư mục của chương trình nếu bạn muốn cài đặt nó sau - bạn có thể chạy lệnh sau từ thư mục để gỡ cài đặt chương trình khỏi hệ thống của bạn:
sudo thực hiện gỡ cài đặt
Các chương trình bạn cài đặt theo cách này sẽ không được cập nhật tự động bởi Trình quản lý cập nhật của Ubuntu, ngay cả khi chúng có chứa các lỗ hổng bảo mật. Trừ khi bạn yêu cầu một ứng dụng hoặc phiên bản cụ thể không có trong kho phần mềm của Ubuntu, bạn nên gắn bó với các gói chính thức của bản phân phối.
Có rất nhiều thủ thuật nâng cao mà chúng tôi chưa đề cập ở đây - nhưng, hy vọng, quá trình biên dịch phần mềm Linux của riêng bạn không còn đáng sợ nữa.