Như những người khác đã lưu ý, hãy đảm bảo rằng đối với mọi deb …
mục nhập /etc/apt/sources.list
và /etc/apt/sources.list.d/*
, bạn có một deb-src …
mục phù hợp . Phần còn lại của dòng phải giống hệt nhau. Các deb
entry là đối với các gói nhị phân (tức là đã sẵn sàng để cài đặt) thì deb-src
là đối với các gói mã nguồn (tức là đã sẵn sàng để biên dịch). Lý do tại sao hai loại nguồn được tách ra là do chúng được quản lý rất khác nhau: các gói nhị phân có cơ chế theo dõi phụ thuộc và danh sách hiện được cài đặt, trong khi các gói nguồn chỉ được theo dõi để có thể tải xuống một cách thuận tiện. Lưu ý rằng khi thảo luận về kho lưu trữ gói, nguồn từ có nghĩa là hai thứ không liên quan: nguồn như ở vị trí để tải gói từ và gói nguồn trái ngược với gói nhị phân.
libgtk2.0-0
là tên của gói nhị phân. Nó được xây dựng từ một gói nguồn được gọi là gtk+2.0
. Lý do tên gói nguồn và nhị phân không khớp với nhau là việc xây dựng gói nguồn có thể tạo ra nhiều gói nhị phân; ví dụ, gtk+2.0
là nguồn gốc cho 14 gói vì nó được chia thành hai thư viện ( libgtk2.0
, libgail ), corresponding packages to build programs using these libraries (
... -dev ), documentation for developers (
... -doc ), companion programs (
libgtk2.0-bin`) vv
Bạn có thể thấy tên của gói nguồn tương ứng với gói nhị phân bằng cách kiểm tra Source: …
dòng trong đầu ra của dpkg -s BINARY_PACKAGE_NAME
(nếu gói được cài đặt) hoặc apt-cache show BINARY_PACKAGE_NAME
. Bạn có thể liệt kê các gói nhị phân được sản xuất bởi một gói nguồn với aptitude search '?source-package(^SOURCE_PACKAGE_NAME$)
.
Lệnh apt-get source
tải xuống một gói nguồn. Nếu bạn đưa ra một đối số không phải là gói nguồn đã biết, nó sẽ tìm kiếm trong cơ sở dữ liệu của các gói nhị phân có thể cài đặt và cố gắng tải xuống gói nguồn tương ứng. Lệnh apt-get build-dep
tuân theo cách tiếp cận tương tự để suy ra tên của gói nguồn, sau đó truy vấn cơ sở dữ liệu gói nguồn để lấy danh sách các gói nhị phân (danh sách trong Build-Dep:
trường) và cài đặt các gói nhị phân đó.
GUI nguồn phần mềm có một hộp kiểm tra cho phép các kho lưu trữ với mã nguồn mã nguồn cho các kho lưu trữ chính thức, đảm bảo rằng nó được đánh dấu. Nếu bạn thêm kho lưu trữ của bên thứ ba theo cách thủ công, hãy đảm bảo rằng bạn thêm cả hai deb-src
và deb
dòng.
deb-src
kho lưu trữ có liên quan trong /etc/apt/source.list chưa?