biên dịch gói và giữ gọn gàng apt


3

Lần đầu tiên trong sự nghiệp Linux (Debian) của tôi, có vẻ như tôi cần phải tự biên dịch một phần mềm.

Quá trình biên dịch được mô tả tốt trên trang web của dự án. Tuy nhiên, có một điều tôi không hiểu, khiến tôi không thể bắt đầu:

Tôi muốn giữ cho quản lý gói của mình (APT) gọn gàng. Để biên dịch dự án, tôi cần tải xuống rất nhiều gói (hầu hết là các phiên bản * -dev), mà tôi có thể không cần, sau khi tôi hoàn thành việc biên dịch.

Tôi không muốn giữ những gói * -dev sau đó.

Do đó, tôi tự hỏi liệu có một cách thực tế để tạm thời cài đặt các gói đó cho quá trình biên dịch và sau đó xóa tất cả chúng cùng một lúc (mà không phải nhớ từng tên gói).


1
Đảm bảo rằng bạn không thể tìm thấy gói Debian sẽ làm những gì bạn muốn. Hãy xem xét việc tự đóng gói Debian. Nó thường dễ dàng hơn vẻ ngoài của nó và các công cụ như dh( man dh) giúp tự động hóa quy trình.
Faheem Mitha

Câu trả lời:


4

Nếu gói xảy ra trong một repo debian ở đâu đó, bạn có thể sử dụng build-depđể cài đặt các phụ thuộc của bản dựng và đánh dấu chúng là 'tự động' được cài đặt. Sau đó, bạn có thể sử dụng autoremoveđể dọn dẹp các bản dựng.

apt-get build-dep -o APT::Get::Build-Dep-Automatic=true WhatImBuilding
apt-get autoremove

Nếu bất cứ điều gì bạn đang xây dựng không có gói gỡ lỗi với bản dựng ở đâu đó, thì kỹ thuật này không hoạt động. Tuy nhiên, có một đề xuất tính năng debian để thêm loại hỗ trợ này: https://bugs.debian.org/cgi-bin/ormsreport.cgi?orms=745769

Tôi cho rằng bạn có thể định nghĩa gói giả cho bất cứ thứ gì bạn đang xây dựng trong một repo cục bộ mà bạn quản lý và xác định các bản dựng ở đó, cho phép phương thức trên hoạt động. Đó là một chút giả định, mặc dù. Bạn cũng có thể chỉnh sửa /var/lib/apt/extended_statestệp để đánh dấu bất kỳ gói nào bạn đang cài đặt là 'tự động', do đó làm cho chúng đủ điều kiện autoremove, nhưng điều đó có thể nguy hiểm.


1
Tôi thấy lỗi wishlist là của tôi. Nhưng tôi hầu như đã xoay sở để quên đi lỗi danh sách mong muốn, câu trả lời của U & L được tham chiếu và các cuộc thảo luận liên quan về trò chuyện. Rõ ràng, trí nhớ của tôi tiếp tục tốt hơn. Dù sao, hãy thoải mái ping báo cáo lỗi Debian. Càng nhiều người nói rằng họ quan tâm, nó càng có khả năng được thực hiện trước thiên niên kỷ tiếp theo. Không có nhiều tài nguyên để phát triển apt và chúng có rất nhiều ưu tiên.
Faheem Mitha

Để rõ ràng, "ping" có nghĩa là viết thư cho 745769@bugs.debian.org và nói rằng bạn sẽ quan tâm đến tính năng này. Bạn cũng có thể tham khảo câu hỏi này.
Faheem Mitha
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.