web-dev-qa-db-fra.com

Comment puis-je installer un AverTV Hybrid Volar HX?

Comment installer le pilote pour que mon AverTV Hybrid Volar HX fonctionne sur le tout nouvel ordinateur Ubuntu 11.10? Je suis novice dans le monde Linux, mais Ubuntu a fière allure. S'il vous plaît donnez-moi un coup de main!

3
bernd

Ceci concerne les pilotes 64 bits, mais la même solution s'applique probablement à la version 32 bits en utilisant simplement x86 au lieu de x64 dans les noms de fichiers. La solution est inspirée par le grand travail des gars de linuxtv.org

  1. Créez un répertoire appelé AverTVVolarHX dans votre maison
  2. Téléchargez C038A827H826_Installer_x64_0.10-Beta_091126.Zip à partir de AverMedia WebSite dans ce répertoire.
  3. Créez dans le même répertoire le fichier de correctif moy.patch:
    diff -Nr -u0 original/installer/installer.sh modified/installer/installer.sh
    --- original/installer/installer.sh     2009-11-13 11:47:33.000000000 +0100
    +++ modified/installer/installer.sh     2011-08-28 20:58:38.000000000 +0200
    @@ -177,13 +176,0 @@
    -       if [[ "$kversion" != "2" || "$kpatchlevel" != "6" ]]; then
    -               dialog --backtitle "$BACKTITLE" \
    -               --title "Kernel version error" \
    -               --msgbox "Installer cannot determine kernel version or the running kernel is not 2.6.x kernel. \n\
    -Installer will abort now.
    -" \
    -               10 $WIDTH
    -               log "generate_kdep_string: wrong kernel version ${kversion}.${kpatchlevel}.${ksublevel}. Abort."
    -        log_from_file $ksrc/Makefile #s016
    -        log_from_file $kobj/Makefile #s016
    -               exit
    -       fi
    -
    @@ -994,3 +980,0 @@
    -   # check if root
    -   log "check if root: EUID=$EUID"
    -   if [[ "$EUID" != "0" ]]; then
    @@ -998,9 +981,0 @@
    -       dialog --backtitle "$BACKTITLE" \
    -       --title "ERROR: " \
    -       --msgbox \
    -       "You must be root to run installer. \
    -\nPlease login as root or use 'su' or 'Sudo' to abtain root privilege. \
    -\nInstaller will now abort." 10 $WIDTH
    -       clear
    -       exit
    -   fi
    diff -Nr -u0 original/installer/src/aver/osdep.c modified/installer/src/aver/osdep.c
    --- original/installer/src/aver/osdep.c 2009-11-13 11:54:56.000000000 +0100
    +++ modified/installer/src/aver/osdep.c 2011-08-28 20:19:19.000000000 +0200
    @@ -89 +88,0 @@
    -#include <linux/smp_lock.h>
    @@ -435 +434 @@
    -               init_MUTEX(tmp);
    +               sema_init(tmp, 1);
    @@ -439 +438 @@
    -               init_MUTEX_LOCKED(tmp);
    +               sema_init(tmp, 0);
    @@ -1069,0 +1069 @@
    +static DEFINE_MUTEX(dvbdev_mutex);
    @@ -1072 +1072 @@
    -       lock_kernel();
    +       mutex_lock(&dvbdev_mutex);
    @@ -1077 +1077 @@
    -       unlock_kernel();
    +       mutex_unlock(&dvbdev_mutex);
    diff -Nr -u0 original/installer/src/aver/osdep_dvb.c modified/installer/src/aver/osdep_dvb.c
    --- original/installer/src/aver/osdep_dvb.c     2009-11-13 11:54:57.000000000 +0100
    +++ modified/installer/src/aver/osdep_dvb.c     2011-08-28 20:19:36.000000000 +0200
    @@ -79 +78,0 @@
    -#include <linux/smp_lock.h>
    @@ -233 +232 @@
    -               init_MUTEX(&p->feedlock);
    +               sema_init(&p->feedlock, 1);
    diff -Nr -u0 original/installer/src/aver/osdep_th2.c modified/installer/src/aver/osdep_th2.c
    --- original/installer/src/aver/osdep_th2.c     2009-11-13 11:54:57.000000000 +0100
    +++ modified/installer/src/aver/osdep_th2.c     2011-08-28 20:20:00.000000000 +0200
    @@ -78 +77,0 @@
    -#include <linux/smp_lock.h>
    @@ -80,0 +80 @@
    +#include "osdep.h"
    @@ -90 +90 @@
    -        lock_kernel();
    +        SysLockKernel();
    @@ -100 +100 @@
    -        unlock_kernel();
    +        SysUnlockKernel();
    diff -Nr -u0 original/installer/src/aver/osdep_v4l2.c modified/installer/src/aver/osdep_v4l2.c
    --- original/installer/src/aver/osdep_v4l2.c    2009-11-13 11:54:58.000000000 +0100
    +++ modified/installer/src/aver/osdep_v4l2.c    2011-08-28 20:20:19.000000000 +0200
    @@ -75,0 +76,2 @@
    +#define VFL_TYPE_VTX 3
    +
    @@ -84 +85,0 @@
    -#include <linux/smp_lock.h>
  4. Terminal ouvert
    $ cd ~/AverTVVolarHX
    $ unzip C038A827H826_Installer_x64_0.10-Beta_091126.Zip
    $ cd H826D_Installer_x64_0.10-Beta
    $ tail -n +115 AVERMEDIA-Linux-x64-H826D-0.10-beta.sh | bzip2 -d | tar xf -
    $ patch -l -p1 < ../aver.patch
    $ cd installer
    $ ./installer.sh
  5. Pendant l'installation, choisissez Expert Installation, sélectionnez/home/& ltyouruser>/AverTVVolarHX comme répertoire d'installation et de finition de l'installation (les sources du module seront simplement exportées dans/home/& ltyouruser>/AverTVVolarHX/H826D-expert-install)
  6. Maintenant, vous avez besoin d'un éditeur hexadécimal, par exemple. ghex, qui se trouve dans les référentiels par défaut. Fichier d'édition hexadécimal /home/&ltyouruser>/AverTVVolarHX/H826D-expert-install/aver/osdep_dvb.o_shipped et remplacez param_array_get et param_array_set par param_array_ops
  7. Créez dans le répertoire/home/& ltyouruser>/AverTVVolarHX/H826D-expert-install installer.sh :
    #!/bin/bash -i
    
    # get absolute path of this script
    BASE=`(cd \`dirname $0\`; pwd)`
    
    TARGET_DIR=/lib/modules/`uname -r`/kernel/drivers/media/dvb/dvb-usb
    
    if [[ "$EUID" != "0" ]]; then
        echo -e "You must be root to run installer. 
    \nPlease login as root or use 'su' or 'Sudo' to obtain root privileges.
    \nInstaller will now abort."
        exit
    fi
    
    cd "$BASE"
    
    make || { echo "make failed"; exit 1; }
    
    echo -e "\nCopying h826d.ko to $TARGET_DIR/h826d.ko"
    cp -r h826d.ko $TARGET_DIR/ || { echo "copy failed"; exit 1; }
    
    echo -e "\nCopying averusbh826d.ko to $TARGET_DIR/averusbh826d.ko"
    cp -r averusbh826d.ko $TARGET_DIR/ || { echo "copy failed"; exit 1; }
    
    echo -e "\nRunning depmod -a"
    depmod -a || { echo "depmod failed"; exit 1; }
    
    echo -e "\nCleaning"
    make clean || { echo "make clean failed"; exit 1; }
    
    echo -e "\nCompleted"
  8. Enfin, lancez installer.sh
    $ cd /home/<youruser>/AverTVVolarHX/H826D-expert-install
    $ chmod +x installer.sh
    $ Sudo ./installer.sh

Le répertoire d'installation de H826D-expert est la seule chose dont vous avez besoin pour les recompilations futures. Enregistrez-le donc ailleurs. Les autres fichiers et répertoires peuvent maintenant être supprimés en toute sécurité.

1
Juanra Dikal
0
Alok