দেবিয়ান বা উবুন্টুতে (প্রদত্ত) কেবলমাত্র প্রদত্ত প্যাকেজের নির্ভরতা ইনস্টল করুন


18

কোনও প্যাকেজের কেবল প্রয়োজনীয় নির্ভরতাগুলি ইনস্টল করার পরিবর্তে এটিপ-গেট (বা ডিপিকেজির অন্য কোনও সীমান্ত) দিয়ে সরাসরি ইনস্টল করার এবং এরপরে নির্ভরতাগুলি ছেড়ে দিয়ে তা তাত্ক্ষণিকভাবে অপসারণ করার আরও ভাল উপায় কি সম্ভব?

উত্তর:


22

apt-cache depends pkgname প্যাকেজের নির্ভরতা দেখাবে।

আপনি যদি সমস্ত কমান্ডে এটি চান তবে আপনি এর চেয়েও খারাপ করতে পারেন:

apt-get install `apt-cache depends pkgname | awk '/Depends:/{print$2}'`

16

apt-get ঠিক এর জন্য একটি কমান্ড সরবরাহ করে ...

apt-get build-dep <package name>

আপনি যে ম্যান পেজগুলি পেয়েছেন তা থেকে

বিল্ড-ডিপ উত্স প্যাকেজের জন্য বিল্ড নির্ভরতাগুলি সন্তুষ্ট করার প্রয়াসে প্যাকেজগুলি ইনস্টল / অপসারণের জন্য অ্যাপটি-গেটের কারণ করে। ডিফল্টরূপে নির্ভরতা প্যাকেজটি দেশীয়ভাবে তৈরি করতে সন্তুষ্ট। ইচ্ছা করলে হোস্ট-আর্কিটেকচারের পরিবর্তে - হোস্ট-আর্কিটেকচার বিকল্পটি নির্দিষ্ট করা যেতে পারে।


9
build dependenciesএবং এর মধ্যে পার্থক্য থাকতে পারে না dependencies? যেমনটি, আপনি যদি সাধারণত কোনও প্রোগ্রাম ইনস্টল করেন তবে আপনি নির্ভরশীলতা পান যা এটি আসলে চালানো দরকার এবং বিল্ড-নির্ভরতার সাথে আমি লাইব্রেরি, সংকলক, এই জাতীয় জিনিসগুলি সম্পর্কে আরও বেশি চিন্তা করি। সুতরাং যেহেতু আমি নিশ্চিত নই (এই উত্তরটির upvotes রয়েছে) তবে এটি আমার কাছে মনে হয় যে বিল্ড-নির্ভরতা পাওয়া প্যাকেজগুলির (রান) নির্ভরতা পাওয়ার মতোই?
Nanne

1
আপনি সঠিক. এর উত্তর দেওয়ার সময়ে, খুব অনেক আগে, বিল্ড নির্ভরতা (বিল্ড টাইম) এবং নির্ভরতা (রান টাইম) এর মধ্যে পার্থক্য সম্পর্কে আমার সম্পূর্ণ ধারণা ছিল না। Nanne স্পষ্ট করার জন্য আপনাকে ধন্যবাদ!
নাথান ক্রক

4

প্রবণতা আপনাকে ইনস্টল করার সময় প্যাকেজের নামের পরিবর্তে একটি কোয়েরি নির্দিষ্ট করতে দেয়। আপনি যদি নামযুক্ত প্যাকেজের নির্ভরতা ইনস্টল করতে চান তবে আপনি fooযে প্যাকেজগুলির বিপরীত নির্ভরতা ইনস্টল করতে পারেন তা ইনস্টল করতে পারেন foo:

aptitude install '?reverse-depends(foo)'

অথবা

aptitude install '~Rfoo'

একটি প্যাকেজ ইনস্টল করার এটি সরানোর তারপর সমস্যা হল প্যাকেজ ইনস্টল করার পান নির্ভরতা যেমন "স্বয়ংক্রিয়ভাবে ইনস্টল" হিসাবে চিহ্নিত করা হবে, এবং প্রবণতা করে যে কোনো ইনস্টল / Remove / আপগ্রেড কর্ম দ্বারা সরানো হবে অথবা যখন আপনি চালাতে সব apt-get autocleanযদি না আপনি তাদের চিহ্ন হিসাবে ম্যানুয়ালি ব্যবহার করে ইনস্টল করা aptitude markবা apt-markকমান্ড।

যাইহোক, আপনি কেন এটি করতে চান তা এই প্রশ্নটি উত্থাপন করে আমার সর্বোত্তম অনুমানটি হ'ল আপনি কয়েকটি সফ্টওয়্যার যা আপনি হাত দ্বারা সংকলন করতে যাচ্ছেন তার জন্য নির্ভরতা ইনস্টল করার চেষ্টা করছেন। সেক্ষেত্রে আপনি প্রথমে বিল্ড নির্ভরতা ইনস্টল করতে পারবেন apt-get build-dep packagenameতবে তার পরে equivডামি প্যাকেজটি সঠিক নির্ভরতার সাথে ডামি প্যাকেজ নির্মাণের জন্য রানটাইম নির্ভরতা (যা সাধারণত বিল্ড নির্ভরতা থেকে পৃথক হয়) তৈরি করা উচিত for আপনার ম্যানুয়ালি সংকলিত প্রোগ্রাম। সম্পর্কে তথ্য দেখুন equivsমধ্যে এপিটি হাওটুর


3

উত্স থেকে pkgname বিল্ডিং ক্ষেত্রে

apt-get build-dep pkgname

1
বিল্ড নির্ভরতা না রানটাইম নির্ভরতা হয়
sehe

>> উত্স থেকে pkgname নির্মাণের ক্ষেত্রে
এরি

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