Skype के लिए इतने सारे 32-बिट निर्भरता क्यों हैं?


16

Skype स्थापित करते समय, चाहे वह चल रहा हो (पार्टनर रिपॉजिटरी को सक्षम करने के बाद):

sudo apt-get install skype

या इसे उस .debफ़ाइल से इंस्टॉल करना जो आपको स्काइप वेबसाइट से मिलती है। मुझे हमेशा लगता है कि हमेशा 32-बिट निर्भरता की एक बड़ी मात्रा स्थापित की जाती है:

  gstreamer1.0-plugins-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libcdparanoia0:i386
  libcups2:i386 libdbus-1-3:i386 libdbusmenu-qt2:i386 libflac8:i386
  libfontconfig1:i386 libfreetype6:i386 libglib2.0-0:i386 libglu1-mesa:i386
  libgmp10:i386 libgnutls-deb0-28:i386 libgssapi-krb5-2:i386
  libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0:i386 libhogweed4:i386
  libice6:i386 libicu55:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 liblcms2-2:i386
  libmng2:i386 libmysqlclient18:i386 libnettle6:i386 libogg0:i386
  liborc-0.4-0:i386 libp11-kit0:i386 libpng12-0:i386 libpulse0:i386
  libqt4-dbus:i386 libqt4-declarative:i386 libqt4-network:i386
  libqt4-opengl:i386 libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386
  libqt4-xml:i386 libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386
  libqtgui4:i386 libqtwebkit4:i386 libsamplerate0:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libtasn1-6:i386 libtheora0:i386 libtiff5:i386 libvisual-0.4-0:i386
  libvisual-0.4-plugins:i386 libvorbis0a:i386 libvorbisenc2:i386 libwrap0:i386
  libxi6:i386 libxml2:i386 libxrender1:i386 libxslt1.1:i386 libxss1:i386
  libxt6:i386 libxv1:i386 skype-bin:i386 sni-qt:i386

ऐसा क्यों है? मैं गनोम 3.18 के साथ 64-बिट उबंटू GNOME 15.10 पर चल रहा हूं।


1
Skype 64-बिट बायनेरिज़ को समर्पित करने के बजाय एक मल्टीकार एप्लिकेशन है।
सूप-कटोरा

जवाबों:


44

स्काइप एक 32-बिट एप्लिकेशन है और 32-बिट एप्लिकेशन को 32-बिट लाइब्रेरी की आवश्यकता होती है।

यदि किसी एप्लिकेशन को कई पुस्तकालयों की आवश्यकता है और यह 32-बिट है तो जाहिर तौर पर उसे कई 32-बिट पुस्तकालयों की आवश्यकता है।


28

क्योंकि आपका सिस्टम 64-बिट सिस्टम है, और डिफ़ॉल्ट रूप से लगभग 32-बिट पैकेज / लाइब्रेरी स्थापित नहीं है

64-बिट सिस्टम पर, 32-बिट पैकेज, 64-बिट पैकेज के विपरीत, केवल कुछ पहले से इंस्टॉल किए गए पैकेज / लाइब्रेरी का लाभ उठा सकते हैं: कुछ डिफ़ॉल्ट रूप से इंस्टॉल किए गए और जो मैन्युअल रूप से इंस्टॉल किए गए हैं

64-बिट सिस्टम पर लगभग उन सभी पैकेजों / पुस्तकालयों का 64-बिट संस्करण डिफ़ॉल्ट रूप से स्थापित होता है।

आप सबूत चाहते हैं, एक वास्तुकला-अज्ञेयवाद तरीके से अपने सिस्टम में इंस्टॉल किए गए पैकेज की सूची में स्थापित होने के लिए संकुल की सूची की तुलना ( dpkg-query -f '${Binary:package}\n' -Wसूचियों सभी संकुल आपके सिस्टम में स्थापित; sed -n '/:i386/!s/:amd64//p'के साथ समाप्त नहीं प्रिंट केवल लाइनों :i386और पीछे को हटा :amd64अगर वर्तमान, "सूची" में अनुगामी के बिना आपके प्रश्न में संकुल की सूची है :i386):

% comm -13 <(dpkg-query -f '${Binary:package}\n' -W | sed -n '/:i386/!s/:amd64//p' | sort) <(sort list)

आप देखेंगे कि स्थापित किए जाने वाले पैकेजों की वास्तुकला-अज्ञेय सूची (यानी आपके 32-बिट / 64-बिट संस्करण में पहले से ही स्थापित नहीं किए गए पैकेजों की सूची ) कुछ इसी तरह सिकुड़ जाएगी:

libdbusmenu-qt2
libqt4-opengl
libqtwebkit4
skype-bin
sni-qt

1

एक सरल उत्तर यह है कि लिनक्स स्काइप को कुछ समय पहले लिखा गया था और इसे बनाए रखा जा रहा है, फिर से नहीं लिखा गया है। भविष्य में कुछ बिंदु पर, कुछ या कोई 32bit उपयोगकर्ता नहीं बचेगा, और वे उस बिंदु पर फिर से लिख सकते हैं।

एक लंबा दृश्य यह है कि आप अपने सिस्टम में 32 बिट लिब को आसानी से जोड़ सकते हैं और 32 बिट ऐप को चला सकते हैं, जबकि 32 बिट का उपयोगकर्ता रिवर्स नहीं कर सकता है, इसलिए माइक्रोसॉफ्ट ने स्काइप को 32 बिट से दो रिलीज के बजाय अंत से बनाया।


5
यह बिल्कुल सही नहीं है .. ये वास्तविक तथ्य नहीं हैं, और मुझे यह जानना अच्छा लगेगा कि आपको अपने स्रोत कहां से मिले।
डेविड

1
@PeterCordes: 2011 में Мicrosoft Corporation ने Skype Technologies को खरीदा।
BartekChom

3
@BartekChom: सुधार के लिए धन्यवाद, एक संपादित टिप्पणी को दोहराते हुए: हां, स्काइप रिलीज़ केवल 32 बिट बाइनरी को नाराज कर रही है क्योंकि वे देव समय को 64 बिट संस्करण बनाने में नहीं लगाएंगे। ऐसा इसलिए नहीं है क्योंकि लिनक्स पोर्ट एक द्वितीय श्रेणी का नागरिक है, ऐसा इसलिए है क्योंकि उनके पास 64 बिट का विंडोज संस्करण भी नहीं है। संभवतः उनका कोडबेस 64 बिट-क्लीन नहीं है, या उनके पास कुछ हाथ से चलने वाले एश हैं जो वे 64 बिट पर पोर्ट नहीं करना चाहते हैं। या हो सकता है कि उनकी डेटा संरचनाएं बहुत सारे पॉइंटर्स का उपयोग करती हैं, इसलिए 64 बिट संस्करण धीमा होगा। या शायद 64 बिट संस्करण अच्छा होगा, लेकिन वे चूसना और एक नहीं करेंगे।
पीटर कॉर्डेस

2
@ डेविड कोल: स्काइप का "वर्तमान" लिनक्स निर्माण 4.3 है और इसे जून 2014 को अंतिम रूप से अपडेट किया गया था। विंडोज और ओएसएक्स क्लाइंट अब संस्करण 7. एक्स में हैं, न कि 4. एक्स। मुझे लगता है कि इसे "बनाए रखा" और "सक्रिय रूप से विकसित नहीं" के रूप में संदर्भित करना पूरी तरह से उचित है। आगामी सुविधाओं की नई घोषणाएं नियमित रूप से विंडोज और ओएसएक्स समर्थन का उल्लेख करती हैं, लेकिन लिनक्स का उल्लेख नहीं करती हैं (क्योंकि हाल ही में अधिकांश विशेषताओं को स्काइप लिनक्स क्लाइंट में नहीं जोड़ा गया है। कृपया सही नहीं है, या "वास्तविक तथ्य नहीं है" के बारे में अधिक विशिष्ट हो। "।
फोर्ज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.