Dlaczego jest tak wiele 32-bitowych zależności dla Skype?


16

Podczas instalowania Skype'a, czy to przez uruchomienie (po włączeniu repozytorium partnera):

sudo apt-get install skype

Lub instalując go z .debpliku otrzymanego ze strony Skype. Zawsze uważam, że zawsze trzeba zainstalować dużą liczbę 32-bitowych zależności:

  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

Dlaczego to? Korzystam z 64-bitowego systemu Ubuntu GNOME 15.10 z GNOME 3.18.


1
Skype jest aplikacją wielowątkową zamiast dedykowanych 64-bitowych plików binarnych.
— miska do zupy

Odpowiedzi:


44

Skype jest aplikacją 32-bitową, a aplikacje 32-bitowe potrzebują bibliotek 32-bitowych.

Jeśli aplikacja potrzebuje wielu bibliotek i jest to wersja 32-bitowa, to oczywiście potrzebuje wielu bibliotek 32-bitowych.


28

Ponieważ twój system jest systemem 64-bitowym i domyślnie prawie nie ma zainstalowanych 32-bitowych pakietów / bibliotek .

W systemie 64-bitowym pakiety 32-bitowe, w przeciwieństwie do pakietów 64-bitowych, mogą korzystać tylko z kilku już zainstalowanych pakietów / bibliotek: tych domyślnie instalowanych i instalowanych ręcznie .

W systemie 64-bitowym domyślnie instalowana jest 64-bitowa wersja prawie wszystkich tych pakietów / bibliotek.

Jeśli chcesz uzyskać proofy, porównaj listę pakietów do zainstalowania z listą pakietów zainstalowanych w systemie w sposób niezależny od architektury ( dpkg-query -f '${Binary:package}\n' -Wwyświetla listę wszystkich pakietów zainstalowanych w systemie; sed -n '/:i386/!s/:amd64//p'drukuje tylko linie nie kończące się :i386i usuwa ciąg, :amd64jeśli present; „lista” zawiera listę pakietów w pytaniu bez końcowego :i386):

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

Zobaczysz, że agnostyczna lista pakietów do zainstalowania (tj . Lista pakietów, których jeszcze nie zainstalowałeś w wersji 32-bitowej / 64-bitowej ) zmniejszy się do czegoś podobnego do tego:

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

1

Prostszą odpowiedzią jest to, że Linux Skype został napisany jakiś czas temu i jest obecnie utrzymywany, a nie przepisywany. W pewnym momencie w przyszłości pozostanie niewielu użytkowników 32-bitowych lub nie będzie ich wcale, w tym momencie mogą przepisać.

Dłuższy widok jest taki, że możesz dość łatwo dodać 32-bitowe biblioteki lib do swojego systemu i uruchomić aplikację 32-bitową, podczas gdy użytkownik 32-bitowy nie może wykonać odwrotnej czynności, więc Microsoft stworzył Skype 32-bitowy od końca do końca zamiast dwóch wydań.


5
To wcale nie jest poprawne. To nie są faktyczne fakty i chciałbym wiedzieć, skąd masz źródła.
— David

1
@PeterCordes: Мicrosoft Corporation kupił Skype Technologies w 2011 roku.
— BartekChom

3
@BartekChom: dzięki za korektę, ponowne opublikowanie edytowanego komentarza: Tak, wersje Skype są denerwująco 32-bitowe tylko dlatego, że nie poświęcają czasu na tworzenie wersji 64-bitowej. Nie dzieje się tak dlatego, że port Linux jest obywatelem drugiej kategorii, ponieważ nie mają nawet 64-bitowej wersji systemu Windows. Prawdopodobnie ich baza kodów nie jest czysta na 64 bity lub mają one ręcznie dostrojony asm, którego nie chcą przenosić na 64 bity. A może ich struktury danych używają wielu wskaźników, więc wersja 64-bitowa byłaby wolniejsza. A może wersja 64-bitowa byłaby dobra, ale są do bani i nie stworzą żadnej.
— Peter Cordes,

2
@David Cole: „Obecna” wersja Linuksa Skype'a jest 4.3 i została ostatnio zaktualizowana w czerwcu 2014 roku. Klienci Windows i OSX są teraz w wersji 7.X, a nie 4.X. Wydaje mi się, że to w pełni słuszne nazywać to „utrzymywanym”, a nie „aktywnie rozwijanym”. Nowe ogłoszenia o nadchodzących funkcjach rutynowo wspominają o wsparciu dla Windows i OSX, ale nie wspominają o Linuksie (ponieważ większość ostatnich funkcji nie została dodana do klienta Skype na Linuksa. Podaj bardziej szczegółowe informacje na temat tego, co nie jest poprawne, czy też nie „faktyczny fakt” „.
— Wykuć
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.