আপনি উবুন্টুর 64-বিট সংস্করণে 32-বিট প্রোগ্রামটি কীভাবে চালাবেন?


41

আমার কাছে উবুন্টু 13.10 এর একটি 64-বিট সংস্করণ রয়েছে। আমি একটি প্রোগ্রামের 32-বিট সংস্করণটি চালাতে চাই। তবে আমি দেখতে পাই ia32-libs13.10-এ অন্তর্ভুক্ত নেই। এই বা কি জন্য একটি প্রতিস্থাপন প্যাকেজ আছে?



@ বাইন এটি একটি সদৃশ নয়। এই প্রশ্নটি সাধারণ পরিস্থিতি সম্পর্কে, এটি একটি নির্দিষ্ট সমস্যা, এটি উল্লেখ না করা পুরানো, আরও ভাল প্রশ্ন।
শেঠ

এবং ব্রিয়ামের উত্তর দুর্দান্ত ! সুতরাং যদি এটি কোনও জায়গায় ফাঁকি দেওয়া হয় তবে এটি একত্রীকরণ করা উচিত।
মাতিও

উত্তর:


30

ia32-libsপ্যাকেজের আর প্রয়োজন নেই (12.04 সাল থেকে সঠিক হওয়ার জন্য), আপনি যদি এপিটি সিস্টেমটি ব্যবহার করেন তবে আপনার 64-বিট সিস্টেমে 32-বিট প্যাকেজ ইনস্টল করার বিষয়ে চিন্তা করার দরকার নেই। মাল্টিআরচ প্রবর্তনের পর থেকে এটি ঘটেছিল , ডিবিয়ান যেভাবে নির্ভরতা পরিচালিত করে তাতে সবচেয়ে গেম পরিবর্তনকারী নীতি। এই পদ্ধতিটি কার্নেল আর্কিটেকচারের যত্ন ছাড়াই একই সিস্টেমে বিভিন্ন বাইনারি লক্ষ্য রাখতে দেয়। এর অর্থ এই নয় যে আপনি প্রস্তুতি ছাড়াই যে কোনও 32-বিট প্যাকেজ চালাতে পারবেন, তবে আপনি যদি গ্রন্থাগারগুলি / বাইনারিগুলি ইনস্টল করেন তবে তত্ত্বের কোনও অ্যাপ্লিকেশন চালাতে সক্ষম হওয়া উচিত। এটি 64-বিট থেকে 32-বিট এবং তদ্বিপরীত থেকে সত্য।

এখানে চিত্র বর্ণনা লিখুন

এই জাতীয় পদ্ধতি ব্যবহারের জন্য এপিটি পরিচালকদের ব্যবহারের পরামর্শ দেওয়া হয়নি, আনমেট নির্ভরতা রোধ করতে। পরিবর্তণের কিভাবে পরিবর্তন করা হয় নি সম্পর্কে একটি ছোট ইতিহাস রয়েছে:

  1. সুনির্দিষ্টভাবে প্যাকেজটি খালি করে একটি ট্রানজিশনাল প্যাকেজ তৈরি করা হয়েছিল । এটি প্যাকেজগুলির বিরুদ্ধে একাধিক নির্ভরতা যুক্ত করা হয়েছিল যেগুলি মাল্টিআরচে স্থানান্তরিত হয়নি।
  2. আস্তে আস্তে তবে অবশ্যই, সমস্ত প্যাকেজগুলি মাল্টার্ক সমর্থন সহ পুনর্নির্মাণ করা হয়েছিল এবং বিপরীত নির্ভরতাগুলি বাদ দেওয়া হয়েছিল বা ia32-lib-মাল্টার্কে পরিবর্তন করা হয়েছিল। এই প্যাকেজগুলি যখন ia34-libs প্যাকেজগুলির প্রয়োজন বন্ধ করে দেয় একই সময়ে নির্ভরতাগুলি বাদ দেওয়া হয়। নির্ভরতা থেকে পরিবর্তন করা হয়েছে ia32-libsথেকে package:archহচ্ছে packageগ্রন্থাগার প্রয়োজন নাম এবং archস্থাপত্য (নীচে সেখানে স্কাইপ সঙ্গে একটি উদাহরণ)।
  3. সঙ্গে গত মুক্তিia32-libs-multiarch প্যাকেজ প্রাক এক পায়ে খাড়া রিলিজ থেকে অপসারণ করা হয়েছে এবং ia32-libsদুর্বিনীত না প্রকাশিত হয়। সমস্ত উবুন্টু প্যাকেজগুলি মাল্টিআরচ সক্ষম এবং আপনি আপনার সিস্টেমে বিভিন্ন আর্কিটেকচার প্যাকেজ ইনস্টল করতে পারেন।

এখন, 32-বিট বাইনারিগুলির প্রয়োজন এমন একটি প্যাকেজ ইনস্টল করার সময়, আপনি যদি মনোযোগ না দেন তবে আপনি কখনই জানতে পারবেন না যে আপনি 32-বিট প্যাকেজটি ব্যবহার করছেন, যেহেতু প্যাকেজ ম্যানেজার স্বয়ংক্রিয়ভাবে প্রয়োজনীয় নির্ভরতাগুলি টানবে:

sudo apt-get --no-install-recommends -q -y install skype
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  libaudio2:i386 libjbig0:i386 liblcms1:i386 libmng1:i386 libqt4-dbus:i386 libqt4-declarative:i386
  libqt4-network:i386 libqt4-opengl:i386 libqt4-script:i386 libqt4-sql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtgui4:i386 libqtwebkit4:i386 libssl1.0.0:i386 libtiff5:i386
  libxss1:i386 libxv1:i386 skype-bin:i386
Suggested packages:
  nas:i386 liblcms-utils:i386 libqt4-declarative-folderlistmodel:i386 libqt4-declarative-gestures:i386
  libqt4-declarative-particles:i386 libqt4-declarative-shaders:i386 qt4-qmlviewer:i386 libqt4-dev:i386
  libthai0:i386 libicu48:i386 qt4-qtconfig:i386
Recommended packages:
  libqt4-sql-mysql:i386 libqt4-sql-odbc:i386 libqt4-sql-psql:i386 libqt4-sql-sqlite:i386 libcups2:i386
  sni-qt:i386 libasound2-plugins:i386
The following NEW packages will be installed:
  libaudio2:i386 libjbig0:i386 liblcms1:i386 libmng1:i386 libqt4-dbus:i386 libqt4-declarative:i386
  libqt4-network:i386 libqt4-opengl:i386 libqt4-script:i386 libqt4-sql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtgui4:i386 libqtwebkit4:i386 libssl1.0.0:i386 libtiff5:i386
  libxss1:i386 libxv1:i386 skype skype-bin:i386
0 upgraded, 21 newly installed, 0 to remove and 0 not upgraded.
Need to get 33.9 MB/38.2 MB of archives.
After this operation, 118 MB of additional disk space will be used.
Preconfiguring packages ...
Selecting previously unselected package libssl1.0.0:i386.
(Reading database ... 208485 files and directories currently installed.)
Unpacking libssl1.0.0:i386 (from .../libssl1.0.0_1.0.1c-4ubuntu8.1_i386.deb) ...
Selecting previously unselected package libaudio2:i386.
Unpacking libaudio2:i386 (from .../libaudio2_1.9.3-5ubuntu0.13.04.1_i386.deb) ...
Selecting previously unselected package liblcms1:i386.
Unpacking liblcms1:i386 (from .../liblcms1_1.19.dfsg-1.2ubuntu2_i386.deb) ...
Selecting previously unselected package libmng1:i386.
Unpacking libmng1:i386 (from .../libmng1_1.0.10-3build1_i386.deb) ...
Selecting previously unselected package libqtcore4:i386.
Unpacking libqtcore4:i386 (from .../libqtcore4_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-xml:i386.
Unpacking libqt4-xml:i386 (from .../libqt4-xml_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-dbus:i386.
Unpacking libqt4-dbus:i386 (from .../libqt4-dbus_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-network:i386.
Unpacking libqt4-network:i386 (from .../libqt4-network_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-script:i386.
Unpacking libqt4-script:i386 (from .../libqt4-script_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-sql:i386.
Unpacking libqt4-sql:i386 (from .../libqt4-sql_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-xmlpatterns:i386.
Unpacking libqt4-xmlpatterns:i386 (from .../libqt4-xmlpatterns_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libjbig0:i386.
Unpacking libjbig0:i386 (from .../libjbig0_2.0-2ubuntu1_i386.deb) ...
Selecting previously unselected package libtiff5:i386.
Unpacking libtiff5:i386 (from .../libtiff5_4.0.2-4ubuntu2.1_i386.deb) ...
Selecting previously unselected package libqtgui4:i386.
Unpacking libqtgui4:i386 (from .../libqtgui4_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-declarative:i386.
Unpacking libqt4-declarative:i386 (from .../libqt4-declarative_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqt4-opengl:i386.
Unpacking libqt4-opengl:i386 (from .../libqt4-opengl_4%3a4.8.4+dfsg-0ubuntu9.4_i386.deb) ...
Selecting previously unselected package libqtwebkit4:i386.
Unpacking libqtwebkit4:i386 (from .../libqtwebkit4_2.3.0-0ubuntu2_i386.deb) ...
Selecting previously unselected package libxss1:i386.
Unpacking libxss1:i386 (from .../libxss1_1%3a1.2.2-1_i386.deb) ...
Selecting previously unselected package libxv1:i386.
Unpacking libxv1:i386 (from .../libxv1_2%3a1.0.7-1ubuntu0.13.04.1_i386.deb) ...
Selecting previously unselected package skype-bin.
Unpacking skype-bin (from .../skype-bin_4.2.0.11-0ubuntu0.12.04.2_i386.deb) ...
Selecting previously unselected package skype.
Unpacking skype (from .../skype_4.2.0.11-0ubuntu0.12.04.2_amd64.deb) ...
Processing triggers for desktop-file-utils ...
Processing triggers for gnome-menus ...
Processing triggers for hicolor-icon-theme ...
Setting up libssl1.0.0:i386 (1.0.1c-4ubuntu8.1) ...
Setting up libaudio2:i386 (1.9.3-5ubuntu0.13.04.1) ...
Setting up liblcms1:i386 (1.19.dfsg-1.2ubuntu2) ...
Setting up libmng1:i386 (1.0.10-3build1) ...
Setting up libqtcore4:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-xml:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-dbus:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-network:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-script:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-sql:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-xmlpatterns:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libjbig0:i386 (2.0-2ubuntu1) ...
Setting up libtiff5:i386 (4.0.2-4ubuntu2.1) ...
Setting up libxss1:i386 (1:1.2.2-1) ...
Setting up libxv1:i386 (2:1.0.7-1ubuntu0.13.04.1) ...
Setting up libqtgui4:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-declarative:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqt4-opengl:i386 (4:4.8.4+dfsg-0ubuntu9.4) ...
Setting up libqtwebkit4:i386 (2.3.0-0ubuntu2) ...
Setting up skype-bin (4.2.0.11-0ubuntu0.12.04.2) ...
Setting up skype (4.2.0.11-0ubuntu0.12.04.2) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

লক্ষ্য করুন স্কাইপ একটি i386 প্যাকেজ। যদি আমি এটি ইনস্টল করতে অ্যাপট-গেট ব্যবহার করি তবে আমি পরে মাথাব্যাথা থেকে নিজেকে বাঁচাব।

তবে কিছু লোক .debপ্যাকেজগুলি ব্যবহার করতে পছন্দ করেন , তারপরে নিজেকে ব্র্যাস করুন কারণ এটি কিছুটা অগোছালো হতে পারে। আপনার হাতের আগে সমস্ত নির্ভরতা ম্যানুয়ালি ইনস্টল করা উচিত যাতে আপনার সিস্টেমটি আনমেট নির্ভরতা না শেষ করে। একটি কমান্ড যা সাহায্য করবে dpkg-deb -Iকারণ এটি প্যাকেজের তথ্য দেখায়:

dpkg-deb -I zynaddsubfx-dssi_2.4.3-3_amd64.deb 
 new debian package, version 2.0.
 size 266936 bytes: control archive=845 bytes.
     917 bytes,    19 lines      control              
     232 bytes,     3 lines      md5sums              
 Package: zynaddsubfx-dssi
 Source: zynaddsubfx
 Version: 2.4.3-3
 Architecture: amd64
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
 Original-Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
 Installed-Size: 633
 Depends: libasound2 (>= 1.0.16), libc6 (>= 2.15), libgcc1 (>= 1:4.1.1), libjack-jackd2-0 (>= 1.9.5~dfsg-14) | libjack-0.116, libmxml1, libstdc++6 (>= 4.6), zlib1g (>= 1:1.1.4)
[...]

আপনি দেখতে পাচ্ছেন, এটি নির্ভরতাগুলি তালিকাভুক্ত করে, তাই আপনার কেবল sudo apt-get installতখন তাদের এবং তারপরেই থাকে sudo dpkg -i। আবার, সংগ্রহস্থলগুলি ডাউনলোড করার পরিবর্তে এগুলি ম্যানুয়ালি ইনস্টল করার পরিবর্তে সংগ্রহস্থলগুলি থেকে ইনস্টল করতে পছন্দ করুন dpkg -i

এখন, যদি আপনার উন্নয়ন হয় তবে আপনি apt-getসিনট্যাক্স ব্যবহার করে যে কোনও লাইব্রেরি ইনস্টল করতে পারেন । :i386আপনি যে লাইব্রেরিটি ডাউনলোড করতে চান তাতে কেবল যুক্ত করুন এবং সম্পন্ন হয়েছে। আপনি যদি সংগ্রহস্থলগুলি থেকে সফ্টওয়্যারটি ইনস্টল করেন তবে ম্যানুয়ালি এটি করার দরকার নেই।

নীচের লাইন: না, আপনি ইনস্টল না করে 32-বিট প্যাকেজ পরিচালনা করতে পারবেন ia32-libs, যদি আপনি সংগ্রহস্থল থেকে প্যাকেজগুলি ইনস্টল করেন, আরও ভাল। আপনি যদি বিকাশে থাকেন তবে সর্বদা এপিটি সিস্টেমটি ব্যবহার করার চেষ্টা করুন।


Ia32-libs প্যাকেজ ইনস্টল করা আছে কিনা তা যাচাই করে এমন একটি .bin ইনস্টলার সহ আমি কী করতে পারি? আমি যতদূর জানি, এমনকি যদি আমি ম্যানুয়ালি সঠিকভাবে নির্ভরতাগুলি ইনস্টল করি তবে, .bin ইনস্টল করতে ব্যর্থ হবে কারণ এটি ia32-libs প্যাকেজটি অনুসন্ধান করে। Ia32-libs ইনস্টল করা আছে বলে মনে করার জন্য কি ইনস্টলারকে "বোকা বানানোর" উপায় আছে?
গালগলেশ

1
@ গলগলেশ রক্ষণাবেক্ষণকারীকে তাদের জিনিস ঠিক করতে বলুন, তারা অতীতে রয়েছে।
ব্রায়াম

Ia32-libs অপসারণের ক্ষেত্রে একমাত্র সমস্যাটি যখন আপনার PlayOnLinux এর মতো প্রোগ্রাম থাকে যা 32 বিট উইন্ডোজ প্রোগ্রাম চালানোর জন্য 32 বিট লাইব্রেরি ব্যবহার করার চেষ্টা করে। তারপরে এটি সামঞ্জস্যতার পিছনে পিছনে।
অ্যালেক্সLordThorsen

@ রাউরগুলমুফিনগুলি তাদের পরিবর্তন করতে হয়েছিল ... ওপেনসুএস এবং রেড হ্যাট ইতিমধ্যে এলএসবি এবং এফএইচএস স্ট্যান্ডার্ডগুলির সাথে অনুগত ছিল এবং ia32-libs প্যাকেজটি সহজেই পরিবর্তনগুলি পরিচালনা করতে দেয়নি, যা প্রতিটি জন্য একক ডিরেক্টরি ছিল স্থাপত্য। বিকাশকারীদের পরিবর্তে কেবল মাল্টার্কের পরিচিতি অনুসরণ করা উচিত এবং সেই অনুযায়ী তাদের প্যাকেজগুলি পুনরায় চালু করা উচিত। তারা গত 3 বছরে না থাকলে, তারা অলস হয়।
ব্রায়াম

@ ব্রাইয়াম তাই ততক্ষণের পিছনে সামঞ্জস্যতা ভঙ্গ করার জন্য দোষটি এলএসবি এবং এফএইচএসের মানগুলির সাথে রয়েছে। এটি মুর্খতার মতো বলে মনে হচ্ছে যে এটির জন্য কেবল বিকাশকারীদের পুনঃতক্ষণের প্রয়োজন, বিশেষত যেহেতু এটি সমস্ত প্যাকেজগুলি ব্রেক করে যা lib32 এর উপর নির্ভর করে।
অ্যালেক্সLordThorsen

12

I386 আর্কিটেকচার যুক্ত করতে ভুলবেন না আপনি 32-বিট প্যাকেজ ইনস্টল করতে সক্ষম হবেন না:

sudo dpkg --add-architecture i386
sudo apt-get update

প্যাকেজ সমস্যা সমাধানের গাইডটি পরীক্ষা করুন: https://help.ubuntu.com/commune/PackageManagerTroubleshootingProcedure


উপরের দুটি কমান্ড আমার জন্য কোনও 32-বিট প্যাকেজ ইনস্টল করেনি। আমি কী মিস করছি?
e40

2
ঠিক আছে, আমার জন্য, আমাকে আরও দুটি অতিরিক্ত কমান্ড করতে হয়েছিল: apt-get install libc6:i386এবং apt-get install libgtk2.0-0:i386(কারণ এটি একটি জিটিকে অ্যাপ)।
e40
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.