LD_PRELOAD не работает с Skype

Я пытаюсь запустить 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 терпит неудачу и кому-то еще повезло?

2
задан 3 July 2013 в 02:25

2 ответа

запустите 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, чтобы она выглядела следующим образом:

[ 112]
0
ответ дан 3 July 2013 в 02:25

Попробуйте:

-c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'
0
ответ дан 3 July 2013 в 02:25

Другие вопросы по тегам:

Похожие вопросы: