On 24/03/2012 10:17, Bilal wrote:
> Hi all,
> Any step by step instructions to install freenect for python on ubuntu
> 11.10 ?
> i have freenect-glview work fun as do all others examples of freenect
> Under python environnement, when i type:
>>>> import cv
>>>> import freenect
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> ImportError: /usr/local/lib/python2.7/dist-packages/freenect.so:
> undefined symbol: freenect_set_video_mode
It is indeed strange because the version shipped with Ubuntu 11.10 is an
old version of libfreenect that does not use the symbol
freenect_set_video_mode (which has been introduced by later version of
libfreenect). It looks like you use a recent version of the package
python-freenect with an old version of libfreenect0.0 (the shared library).
So could you elaborate a little bit more about the way you have
installed libfreenect:
- Have you enabled any repository (either Florian Echtler's PPA,
NeuroDebian repository or another one that I don't know) ?
- Have you compiled and installed any component of libfreenect from the
sources?
- If so which version (the git tag or the commit)?
- If you have not compiled and installed any libfreenect component, What
is the results of the command 'dpkg -l *freenect*' ?
Cheers,
Nicolas Bourdaud
I also forgot... what is the result of this command:
ldd /usr/local/lib/python2.7/dist-packages/freenect.so
Cheers,
Nicolas
So I am going to help you to recover to a sane state. What I propose to
you is to remove the version you have compiled and use a recent version
from a NeuroDebian repository.
Why I suggest Neurodebian? Simply because you can find there the
backports of the latest packages for libfreenect (backported from
Debian) for all supported versions of Ubuntu and Debian. So the packages
there are the versions you will find in the next Debian/Ubuntu releases.
_Step 1_: Clean up the compiled version
- Go to the folder where you have compiled the library. It should be
<something>/libfreenect/build if you have used the instructions on the wiki.
- execute from there: 'sudo make uninstall'
- Remove the udev rules you might have created:
sudo rm /etc/udev/rules.d/*-kinect.rules
_Step 2_: Install NeuroDebian repository
- execute the commands (they are the same as those described on the
frontpage of http://neuro.debian.net):
wget -O- http://neuro.debian.net/lists/oneiric.us-nh | sudo tee
/etc/apt/sources.list.d/neurodebian.sources.list
sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9
sudo apt-get update
_Step 3_: Install the python-freenect package (and the others)
- execute the command:
sudo apt-get install libfreenect-dev python-freenect libfreenect-bin
- Verify your user belongs to the group plugdev (this is the default for
a desktop user) by checking that the execution of this line returns
something:
groups | grep plugdev
- If the previous command returns nothing, execute:
sudo adduser $USER plugdev
- logout and log back in if you have added your user to the plugdev group
At this step, you should be good, your python and libfreenect library
should be up to date.
On 24/03/2012 17:37, Bilal wrote:
>> ldd /usr/local/lib/python2.7/dist-packages/freenect.so
> linux-gate.so.1 => (0xb7751000)
> libfreenect.so.0.0 => /usr/lib/libfreenect.so.0.0 (0xb7733000)
> libfreenect_sync.so.0.0 => /usr/lib/libfreenect_sync.so.0.0
> (0xb772f000)
> libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb76f6000)
> libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb757a000)
> libusb-1.0.so.0 => /lib/i386-linux-gnu/libusb-1.0.so.0 (0xb756b000)
> /lib/ld-linux.so.2 (0xb7752000)
> librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb7562000)
You mentioned in your first email that the Ubuntu version installed was
64 bits. Are you sure of this? It is not what is suggested here from
execution of ldd or you have a mixed environment. Whether your installed
distribution is 32bits or 64 bits is not important (and does not affect
the instructions I have provided at the beginning of the email) but you
might suffer from some issues if you have installed earlier libfreenect
packages for 32bits on a 64bits installation. If it is the case, I
suggest you remove them before you run the previous instructions.
> and is the same problem i have when i tried to install it in another
> machine for Windows7
> here a error:
> SimpleCV:3>k = Kinect()
> C:\Python27\lib\site-packages\simplecv-1.2-py2.7.egg\SimpleCV
> \Camera.py:406: Use
> rWarning: You don't seem to have the freenect library installed. This
> will make
> it hard to use a Kinect.
> SimpleCV:4>
I cannot help you here. I don't use Windows very often and have never
used python on Windows (more than 5 mins).
> I realy need suggestions,
I hope my email will help you...
But if I can give you a piece of advise, do not install deb packages
manually if you can avoid. Always prefer using apt-get or synaptic or
whichever frontend you like.
Cheers,
Nicolas
On 24/03/2012 20:31, Bilal wrote:
> Ok thank you Nicolas,
> I have fellowed the uninstall/install instructions but:
> For uninstall steps i think it's OK! but when i type:
> sudo tee /etc/apt/sources.list.d/neurodebian.sources.list to install
> Neurodebian, this command take several minutes (>> 30min) and i still
> waiting for response now !!!
:-) you have simply misunderstood... It should have been one command:
wget -O-http://neuro.debian.net/lists/oneiric.us-nh| sudo tee
/etc/apt/sources.list.d/neurodebian.sources.list
I have quickly written some instructions on the wiki to make it clearer:
http://openkinect.org/wiki/Getting_Started#NeuroDebian_repository
> Is that related to the fact that I'm behind a university firewall ?
> Should i set system-wide proxy settings ?
No, not related at all. Don't change any thing about this :-)
Cheers,
Nicolas