Я пытаюсь запустить Skype в Ubuntu 13.04 и получаю черный пробел вместо ввода с веб-камеры, когда моя веб-камера работает с другими приложениями, такими как Cheese.
Традиционное решение - запустить
LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so /usr/bin/skype
Однако, сейчас это не работает, с
$ LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so /usr/bin/skype
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so' from LD_PRELOAD cannot be preloaded: ignored.
$ locate v4l1compat.so
/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so
/usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so
file `which skype`
/usr/bin/skype: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xe7a4372f77f31bca55d7b0e26422b8901d916e51, stripped
я также пытался без ld_preloading ничего. Почему LD_PRELOAD терпит неудачу и кому-то еще повезло?
запустите Skype с помощью следующей команды
LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype
Если это не сработает, сначала убедитесь, что вы установили 32-битный пакет libv4l-0.
Ваш Skype является 32-битной версией и ему нужен 32-битный пакет libv4l-0 (даже если ваша Ubuntu 64-битная). Если у вас его нет, установите его с помощью следующих команд.
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libv4l-0:i386
Если вы не хотите вводить эту длинную команду каждый раз при запуске Skype, вам следует отредактировать файл /usr/share/applications/skype.desktop
и добавить следующее в строку Exec, чтобы она выглядела следующим образом:
Попробуйте:
-c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'