web-dev-qa-db-ja.com

AverTV Hybrid Volar HXのインストール方法を教えてください。

AverTV Hybrid Volar HXを最新のUbuntu 11.10コンピューターで動作させるには、どうすればドライバーをインストールできますか?私はLinuxの世界の初心者ですが、Ubuntuは素晴らしく見えます。手を貸してください!

3
bernd

これは64ビットドライバー用ですが、ファイル名にx64の代わりにx86を使用するだけで、32ビットバージョンにも同じソリューションが適用される可能性があります。このソリューションは、 linuxtv.org の人々による素晴らしい仕事にインスパイアされています。

  1. 自宅にAverTVVolarHXというディレクトリを作成します
  2. C038A827H826_Installer_x64_0.10-Beta_091126.Zipを AverMedia WebSite からそのディレクトリにダウンロードします
  3. 同じディレクトリにパッチファイルaver.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. ターミナルを開きます
    $ 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. インストール中にExpert Installationを選択し、Expert Installationのディレクトリとして/ home /&ltyouruser>/AverTVVolarHXを選択してインストールを完了します(モジュールソースを/ home /&ltyouruser>/AverTVVolarHX/H826D-expert-installに出力します)
  6. ここで、16進エディタが必要です。 ghex。デフォルトのリポジトリにあります。 16進編集ファイル/home/&ltyouruser>/AverTVVolarHX/H826D-expert-install/aver/osdep_dvb.o_shippedおよびparam_array_getおよびparam_array_setをparam_array_opsに置き換えます
  7. ディレクトリ/ 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. 最後にinstaller.sh を実行します
    $ cd /home/<youruser>/AverTVVolarHX/H826D-expert-install
    $ chmod +x installer.sh
    $ Sudo ./installer.sh

H826D-expert-installディレクトリは、将来の再コンパイルに必要な唯一のものであるため、別の場所に保存してください。これで、他のファイルとディレクトリを安全に削除できます。

1
Juanra Dikal
0
Alok