অ্যাপেট-গেট ইনস্টল এবং অ্যাপটি-গেট বিল্ড-ডিপ মধ্যে পার্থক্য কী?


33

অ্যাপিট-গেটের মানুষের পৃষ্ঠাতে , এটি এটির সন্ধান করতে পারে:

pkg (s) ইনস্টল করুন
এই বিকল্পটি ইনস্টলেশনের জন্য পছন্দসই এক বা একাধিক প্যাকেজ অনুসরণ করে। প্রতিটি প্যাকেজ একটি প্যাকেজের নাম, পুরোপুরি যোগ্যতাসম্পন্ন ফাইল নাম নয় (উদাহরণস্বরূপ, ফেডোরা কোর সিস্টেমে, glibc আর্গুমেন্টটি সরবরাহ করা হবে, glibc-2.4.8.i686.rpm নয়)।
ইনস্টলেশনের জন্য নির্দিষ্ট প্যাকেজগুলির দ্বারা প্রয়োজনীয় সমস্ত প্যাকেজগুলি পুনরুদ্ধার এবং ইনস্টল করা হবে
[...]

বিল্ড-ডিপ উত্স_pkg উত্স প্যাকেজের জন্য বিল্ড নির্ভরতাগুলি সন্তুষ্ট করার প্রয়াসে
প্যাকেজগুলি ইনস্টল / অপসারণের জন্য অ্যাপটি-গেটের কারণ দেয় ।

দেখে মনে হচ্ছে এটি উভয়ই নির্ভরতা মেটাতে চেষ্টা করছে তবে ইনস্টল করার সময় আমার বিভিন্ন ফলাফল ছিলmatplotlib মেটাতে চাইছে বলে মনে হচ্ছে, তবে এর প্রত্যেকের সাথে আমার ভার্চুয়ালনেভে আমার apt-get intallসাথে কাজ হয়নি pip install matplotlib, তখন apt-get build-dep* করেছেন।

* হ্যাঁ, আমার ইনস্টল করা দরকার matplotlib একটি ভেন্টে , তবে পাইপ কিছুটা নির্ভরতা সমাধান করতে পারেনি, তাই আমি সমাধানের জন্য অলসভাবে এপটিকে ব্যবহার করেছি

উত্তর:


39

সংক্ষিপ্ত সংস্করণ।

apt-get install

নির্ভর করে প্যাকেজগুলি স্বয়ংক্রিয়ভাবে সমাধান এবং ডাউনলোড করে একটি নতুন প্যাকেজ ইনস্টল করে। যদি প্যাকেজ ইনস্টল থাকে তবে সর্বশেষতম সংস্করণে আপগ্রেড করার চেষ্টা করুন।

apt-get build-dep

উত্স প্যাকেজের জন্য নির্ধারিত নির্ভরতাগুলি সন্তুষ্ট করার প্রয়াসে প্যাকেজগুলি ইনস্টল / অপসারণের জন্য অ্যাপট-গেটের কারণ দেয়।

কমান্ডটির sudo apt-get build-dep packagenameঅর্থ 'প্যাকেজ নাম' এর জন্য সমস্ত নির্ভরতা ইনস্টল করা যাতে আমি এটি তৈরি করতে পারি "।

build-depকমান্ড সিস্টেমের মধ্যে স্থানীয় ভান্ডার অনুসন্ধান করে এবং প্যাকেজের জন্য বিল্ড নির্ভরতা ইনস্টল করুন। স্থানীয় সংগ্রহস্থলে প্যাকেজটি উপস্থিত না থাকলে এটি একটি ত্রুটি কোডটি ফিরিয়ে দেবে।

ম্যাটপ্লটলিব ইনস্টল করার জন্য দেখুন উবুন্টুতে ম্যাটপ্লোটিলিব ইনস্টল করতে

সূত্র: ম্যানপেজ এবং রবি সাইভ


19

পার্থক্যটি হ'ল বিল্ডটাইমের বিপরীতে রানটাইমের সময় নির্ভরতাগুলি প্রয়োজন কিনা

উদাহরণস্বরূপ, সম্ভবত আমি একটি বাইনারি তৈরি করছি যা ওপেনসেল ব্যবহার করে। এ বিল্ড সময় আমি OpenSSL হেডার ফাইল, যা হয় হবে libssl-dev। আমি তখন এটিকে তালিকাভুক্ত করব Build-Depends

যাইহোক, ফলস্বরূপ বাইনারি এবং প্যাকেজটির শিরোনাম এবং অন্যান্য বিকাশ ফাইলগুলির প্রয়োজন হয় না, সুতরাং ইনস্টল করার সময় আমার প্রয়োজন হয় না libssl-dev। এটি তখন হবে না Depends। কিন্তুlibssl , রানটাইম লাইব্রেরিটির সাথে আমার বাইনারি লিঙ্কযুক্ত, এটি থাকা দরকার Depends

আপনার উদ্ধৃত মান বিভাগগুলি এটি নির্দেশ করে (এটি " বিল্ডটি সন্তুষ্ট করার বিষয়ে কথা বলে কোনও প্যাকেজের " নির্ভরতাগুলি ) তবে বিল্ড-নির্ভরতা কখন ব্যবহার করা হয় তার পূর্ব জ্ঞান ছাড়াই এটি বিভ্রান্তিকর হতে পারে।

নিয়ন্ত্রণ ফাইল ক্ষেত্রগুলির সংজ্ঞা জন্য দেবিয়ান নীতি গাইডটি দেখুন:

http://www.debian.org/doc/debian-policy/ch-controlfields.html

বিল্ড-নির্ভর উপর বিভাগ এখানে। নোট করুন এটি " উত্সের নির্ভরতাগুলির অধীনে।" প্যাকেজগুলির " শিরোনামের অধীনে:

http://www.debian.org/doc/debian-policy/ch-relationships.html#s-sourcebinarydeps

এবং এটি ডিপেন্ডস সম্পর্কে আলোচনা করে। বাইনারি প্যাকেজ শিরোনামের অধীনে এর 'নোট করুন :

http://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps


ধন্যবাদ। মনে হচ্ছে উত্স থেকে একটি লাইব্রেরি তৈরির জন্য আমার বিল্ড-ডিপ দরকার হবে .. আপনার বর্ণনানুযায়ী।
kchoi
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.