जैसा कि दूसरों ने पहले ही नोट कर लिया है, सुनिश्चित करें कि हर deb …
प्रविष्टि के लिए /etc/apt/sources.list
और /etc/apt/sources.list.d/*
, आपके पास एक मिलान deb-src …
प्रविष्टि है। शेष पंक्ति समान होनी चाहिए। deb
प्रविष्टि (यानी स्थापित करने के लिए तैयार) द्विआधारी संकुल के लिए है, deb-src
(यानी संकलित करने के लिए तैयार) स्रोत संकुल के लिए है। दो प्रकार के स्रोतों को अलग करने का कारण यह है कि उन्हें बहुत अलग तरीके से प्रबंधित किया जाता है: बाइनरी पैकेज में एक निर्भरता ट्रैकिंग तंत्र और एक वर्तमान में स्थापित सूची है, जबकि स्रोत पैकेज केवल ट्रैक किए जाते हैं ताकि उन्हें आसानी से डाउनलोड किया जा सके। ध्यान दें कि पैकेज रिपॉजिटरी पर चर्चा करते समय, शब्द स्रोत का अर्थ है दो असंबंधित बातें: एक स्रोत के रूप में एक स्थान से पैकेज डाउनलोड करने के लिए, और एक स्रोत पैकेज के रूप में एक बाइनरी पैकेज का विरोध किया।
libgtk2.0-0
एक बाइनरी पैकेज का नाम है। यह एक स्रोत पैकेज से निर्मित है जिसे कहा जाता है gtk+2.0
। कारण स्रोत और बाइनरी पैकेज नाम हमेशा मेल नहीं खाते हैं कि एक स्रोत पैकेज का निर्माण कई बाइनरी पैकेज का उत्पादन कर सकता है; उदाहरण के लिए, gtk+2.0
14 संकुल के लिए स्रोत है क्योंकि यह दो पुस्तकालयों (में विभाजित है libgtk2.0
, libgail ), corresponding packages to build programs using these libraries (
... -dev ), documentation for developers (
... -doc ), companion programs (
libgtk2.0-bin`), आदि
(यदि पैकेज स्थापित है) या Source: …
के आउटपुट में लाइन की जांच करके आप बाइनरी पैकेज के अनुरूप स्रोत पैकेज का नाम देख सकते हैं dpkg -s BINARY_PACKAGE_NAME
या apt-cache show BINARY_PACKAGE_NAME
। आप किसी स्रोत पैकेज द्वारा उत्पादित बाइनरी पैकेज को सूचीबद्ध कर सकते हैं aptitude search '?source-package(^SOURCE_PACKAGE_NAME$)
।
आदेश apt-get source
एक स्रोत पैकेज डाउनलोड करता है। यदि आप इसे एक तर्क देते हैं जो कि एक ज्ञात स्रोत पैकेज नहीं है, तो यह इसे इंस्टॉल करने योग्य बाइनरी पैकेज के डेटाबेस में दिखता है और संबंधित पैकेज को डाउनलोड करने का प्रयास करता है। apt-get build-dep
स्रोत पैकेज के नाम को कम करने के लिए कमांड उसी दृष्टिकोण का अनुसरण करता है, फिर बाइनरी पैकेज ( Build-Dep:
क्षेत्र में सूची ) की सूची प्राप्त करने के लिए स्रोत पैकेज डेटाबेस पर सवाल उठाता है , और उन बाइनरी पैकेजों को स्थापित करता है।
सॉफ्टवेयर स्रोत जीयूआई में आधिकारिक रिपॉजिटरी के लिए चेकबॉक्स "स्रोत कोड के साथ रिपॉजिटरी सक्षम करें" है, यह सुनिश्चित करें कि यह टिक हो गया है। यदि आप मैन्युअल रूप से तृतीय-पक्ष रिपॉजिटरी जोड़ते हैं, तो सुनिश्चित करें कि आप दोनों deb-src
और deb
लाइनें जोड़ते हैं।
deb-src
अपने /etc/apt/source.list में प्रासंगिक भंडार सक्षम किया है ?