হোল্ড ভাঙ্গা প্যাকেজ ঠিক কিভাবে?


21

উবুন্টুতে 14.04.2 এ libssl-dev ইনস্টল করার চেষ্টা করা হচ্ছে

$ make
fatal error: openssl/sha.h: No such file or directory
compilation terminated.

$ sudo apt-get install libssl-dev
The following packages have unmet dependencies:
 libssl-dev : Depends: zlib1g-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

$ sudo apt-get install zlib1g-dev
The following packages have unmet dependencies:
 zlib1g-dev : Depends: zlib1g (= 1:1.2.3.4.dfsg-3ubuntu4) but 1:1.2.8.dfsg-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

আমি কীভাবে অনুষ্ঠিত প্যাকেজটি সরিয়ে সঠিক ইনস্টল করতে পারি?


আপনি কখন শেষ দৌড়েছিলেন sudo apt updateএবং / বা sudo apt upgrade?
ডোপঘোতি

হাই, আমি প্রতিটি পদক্ষেপের মধ্যে উভয়ই করেছি।
স্যাম হেইলি

উত্তর:


18

প্রথমে এটি প্রবেশ করার চেষ্টা করুন: sudo dpkg --configure -a

ভাঙ্গা নির্ভরতা ঠিক করার দিকে এটি দীর্ঘ পথ পাবে। যদি এটি যথেষ্ট না হয়, চেষ্টা করুন: sudo apt-get install -f

তারপরে পরিষ্কার করুন এবং আপডেট করুন: sudo apt-get clean && sudo apt-get update

তারপরে আপগ্রেড করুন: sudo apt-get upgrade (আপগ্রেডগুলিতে 'y' বলুন)

আপনি যদি কোনও বার্তা পেয়ে থাকেন যাতে কিছু প্যাকেজ "হোল্ড" হয়ে থাকে বলে থাকে তবে এটি করুন:

sudo apt-get dist-upgrade

এখন এই দুটি কমান্ড করুন:

sudo apt-get purge zlib1g-dev
sudo apt-get autoremove

তারপরে আপনি প্রবেশ করার পরে কী ঘটে তা দেখুন: sudo apt-get install libssl-dev

যদি এটি এখনও কাজ না করে, তবে চেষ্টা করুন:

sudo aptitude install libssl-dev zliblg-dev=1:1.2.8.dfsg-1ubuntu1

যদি এটি এখনও কাজ না করে তবে সিন্যাপটিক প্যাকেজ ম্যানেজারটি খুলুন (এটি আপনার লঞ্চারের মধ্যে হওয়া উচিত you আপনি যদি এটি খুঁজে না পান তবে টার্মিনাল এন্টার এ synaptic-pkexec)।

জন্য অনুসন্ধান করুন zlib1g-dev। Zlib1g-dev এর পাশের বাক্স যদি সবুজ না হয় তবে এটিতে ক্লিক করুন এবং "ইনস্টলেশনের জন্য চিহ্নিত করুন" নির্বাচন করুন। যদি আপনি একাধিক সংস্করণ দেখতে পান তবে চয়ন করুন 1:1.2.8.dfsg-1ubuntu1। তারপরে অনুসন্ধান করুন libssl-dev। যদি libssl-dev এর পাশের বাক্সটি সবুজ না হয় তবে এটিতে ক্লিক করুন এবং "ইনস্টলেশনের জন্য চিহ্নিত করুন" নির্বাচন করুন।

তারপরে "প্রয়োগ" নির্বাচন করুন।


হাই, জবাব দেওয়ার জন্য আপনাকে ধন্যবাদ আমি উপরের সমস্ত কিছু করেছি এবং আমার মূল পোস্টের মতো একই ত্রুটি পেয়েছি। আমি যখন আপগ্রেড চালালাম তখন আমি নীচের বার্তাটি পেয়েছি। নিম্নলিখিত প্যাকেজগুলি ফিরিয়ে রাখা হয়েছে: লিনাক্স-জেনেরিক-এলটিস-ইউটোপিক লিনাক্স-হেডারস-জেনেরিক-এলটিস-ইউটোপিক লিনাক্স-চিত্র-জেনেরিক-lts-utopic 0 আপগ্রেড, 0 নতুন ইনস্টলড, 0 অপসারণ এবং 3 আপগ্রেড করা হয়নি।
স্যাম হিলি

কি দেয় apt-cache policy zlib1g-devএবংgrep -P '^[ \t]*[^#[ \t]+' /etc/apt/sources.list /etc/apt/sources.list.d/*.list

@ বাহামুত আপনি কি নিশ্চিত যে "-পি" বলতে চাইছেন? আমার জন্য, আমি পেতেE: Command line option 'P' [from -P] is not known.
gracious1

@ সামাহেলে আমি আমার উত্তর কিছুটা পরিবর্তন করেছি। আমি সেখানে যা বলছি তা চেষ্টা করে দেখুন এবং এটি কীভাবে হয় তা আমাদের জানান।
করুণাময় 1

1
@ বাহামুত গ্রাফিকাল প্রোগ্রাম নিয়ে সুদ নেই কেন?
করুণাময় 1

2

আপনার প্যাকেজ সম্পর্কিত সমস্ত ফাইল সন্ধান করতে হবে এবং সেগুলি পরিষ্কার করতে হবে, তারপরে পুনরায় ইনস্টল করুন।

sudo dpkg --list
sudo apt-get purge "file-name"

প্রতিটি ফাইলের সাথে দ্বিতীয় কমান্ডটি পুনরাবৃত্তি করুন এবং তারপরে কেবল পুনরায় ইনস্টল করুন।


0
sudo aptitude install lib_name_depending

যখন আমি libcurl4-openssl-devআমার উবুন্টু 14.04LTS এ ইনস্টল করতে চেয়েছিলাম তখন আমার পক্ষে কাজ করেছিল।

বেশ কয়েকটি নির্ভরশীল libs আমার মেশিনে ইনস্টল করা হয়নি এবং প্রযোজনীয় সরঞ্জামের সাহায্যে আমি ইন্টারেক্টিভভাবে ইনস্টল করতে / সক্ষম করতে প্রয়োজনীয় libs / প্যাকেজটি ডাউনগ্রেড করার ব্যবস্থা করি libcurl4-openssl-dev

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