Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm trying to run Skype on Ubuntu 13.04, and getting a black void instead of my webcam input, when my webcam works with other applications such as Cheese.

The traditional solution is to run

LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so /usr/bin/skype

However, this is now failing to work, with

$ 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

I have also tried without ld_preloading anything. Why might LD_PRELOAD be failing and has anyone else had any luck?

share|improve this question

closed as off-topic by Braiam, Radu Rădeanu, Eric Carvalho, Richard, Avinash Raj May 11 at 3:53

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

    
Is this reproducible anymore? –  Braiam May 9 at 22:02

2 Answers 2

start skype with the following command

LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype

If this doesn't work, make sure you install the 32bit libv4l-0 package first.

Your Skype is a 32bit version and it needs the 32bit libv4l-0 package (even though your ubuntu is 64 bit). If you don't have it install it by the following commands.

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libv4l-0:i386

If you don't want to type this long command every time while launching Skype, you should edit the /usr/share/applications/skype.desktop file and add the following at the Exec line so that it looks like this:

Exec=sh -c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'
share|improve this answer

Try:

-c 'LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype'
share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.