Kompilieren
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Um Skype HQ-Video auch unter älteren Ubuntu-Versionen nutzen zu können, muss zunächst das Programm uvcdynctrl
installiert werden.
Vorbereitung¶
Zunächst muss das Programm uvcdynctrl bezogen werden. Es fügt dynamische Kontrollen der speziellen UVC-Erweiterungen für UVC-Geräte hinzu, was notwendig ist, um Video mit höheren Auflösungen zu versenden. Bis einschließlich Ubuntu Lucid Lynx 10.04 ist das Paket uvcdynctrl nicht in den Paketquellen enthalten. Es muss daher selbst kompiliert werden. Dazu werden zunächst benötigten Pakete installiert[1]:
subversion
linux-source
cmake
g++
libxml2-dev
gengetopt (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install subversion linux-source cmake g++ libxml2-dev gengetopt
Oder mit apturl installieren, Link: apt://subversion,linux-source,cmake,g++,libxml2-dev,gengetopt
Dann wird der Quellcode mittels SVN bezogen, der Quellcode des Linux-Kernels entpackt[2] und daraus die benötigte Header-Datei uvcvideo.h kopiert. Im Terminal [3] den folgenden Befehlszeilen die XX
durch die Versionsnummer des Kernels ersetzen.
svn checkout http://svn.quickcamteam.net/svn/qct/Linux/ cam cd cam/Common/include cd /usr/src sudo tar xfj linux-source-2.6.XX.tar.bz2 cd - cp /usr/src/linux-source-2.6.XX/drivers/media/video/uvc/uvcvideo.h .
Leider ist diese Datei eigentlich für einen anderen Zweck bestimmt, weshalb eine Definition in dieser Datei Fehler hervorruft. Daher muss die Datei uvcvideo.h mit einem Editor[4] mit Root-Rechten[5] geöffnet werden, und in Zeile 59 muss ein __user
entfernt werden, sodass aus
struct uvc_xu_control { __u8 unit; __u8 selector; __u16 size; __u8 __user *data; };
Folgendes wird:
struct uvc_xu_control { __u8 unit; __u8 selector; __u16 size; __u8 *data; };
Kompilieren¶
Nun in den Ordner cam wechseln, welcher vom svn-checkout-Befehl angelegt wurde. Hier einen Ordner build für die zum Bauen notwendigen Dateien anlegen und diesen mittels cmake füllen. Danach wie gewohnt kompilieren [6] und installieren:
cd ../../ mkdir build cd build cmake .. make make install
Abschließend noch die Datei libwebcam.so.0.1.2 an die richtige Stelle verlinken:
sudo ln -s /usr/local/lib/libwebcam.so.0.1.2 /usr/lib/libwebcam.so.0.1.2