GSPCA →  Запускаємо WEB-камеру кампіляцією останньої версії GSPCA

Ні для кого не буде секретом, що веб-камери для Linux були слабким місцем до того як хороші хлопці написали GSPCA - збірник драйверів для веб-камер.

Плідна робота ведеться постійно і майже щоденно додається підтримка нових камер. Часто буває так, що купляєш нову камеру, а вона підтримується в останній версії GSPCA, однак в репозиторіях є тільки стара версія пакунку.

Тому ми спробуємо компілювати GSPCA з свіжих вихідних кодів.

Видалення старої інсталяції GSPCA

Для компіляції двайверу спочатку треба видалити попередню версію встановлену в системі. Драйвери Linux є модулями ядра та розміщуються в спеціальній директорії /lib/modules/

Для визначення версії свого ядра:
# uname -r

Далі рухаємося до /lib/modules/[версія ядра]/kernel/drivers/media/video/gspca


Переходячи з теорії до практики, ми зробимо видалення однією командою
# rm -r /lib/modules/`uname -r`/kernel/drivers/media/video/gspca

Переконаємося чи всі модулі видалено:
# lsmod | grep gspca

Якщо ще щось залишилося, то можна видалити залишки:
# rmmod [назва модуля]

Також вимкнемо
# rmmod videodev

Компіляція та встановлення свіжого GSPCA

Спочатку підготуємо нашу систему:

# apt-get install mercurial build-essential linux-headers libncurses5-dev

Візьмемо останню версію коду з Mercurial репозиторію


# cd /usr/src
# hg clone http://linuxtv.org/hg/~hgoede/gspca


зкомпілюємо код і встановимо нові модулі


# cd gspca*
# make
# make install


Можна підключити камеру, має працювати! (можливо знадобиться як у Windows перезавантаження)

Цікаві послання по темі:
http://ubuntuforums.org/showpost.php?p=8289360&postcount=5
http://ubuntuforums.org/showthread.php?t=619431
http://swik.net/Ubuntu/Only+Ubuntu/How+to+Install+Hercules+Classic+Silver+Webcam+in+Ubuntu+8.10/ct259
http://mxhaard.free.fr/spca5xx.html

коментарі:

bordik 03.05.2010 21:22
Команда "apt-get install mercurial build-essential linux-headers libncurses5-dev" дає наступне
Читання переліків пакетів... Виконано
Побудова дерева залежностей
Reading state information... Виконано
Пакунок linux-headers - віртуальний, його функції надаються пакунками:
  linux-headers-2.6.31-10-rt 2.6.31-10.153
  linux-headers-2.6.32-21-generic-pae 2.6.32-21.32
  linux-headers-2.6.32-21-generic 2.6.32-21.32
  linux-headers-2.6.32-21-386 2.6.32-21.32
  linux-headers-2.6.32-21 2.6.32-21.32
Ви повинні явно вказати, який саме ви хочете встановити.
E: Для пакунка linux-headers не знайдені кандидати на встановлення
meako 04.05.2010 06:38
<іронія>А в мене видає:
bash: apt-get: command not found
</іронія>
Прочитайте помилку, ну там ж у вас усе написано.
Подивіться командою
uname -a
котре у вас ядро, і зі списку пакетів виберіть найбльш підходящий набір хедерів (такий самий як ядро:) )
І встановіть командою для прикладу
apt-get install linux-headers-2.6.32-21-generic
meako 04.05.2010 06:33
Компіляція пакетів, а тим більше модулів ядра з сорців, в пакетних дистрибутивах — не дуже хороша річ, бо призводить до засмічення системи, не відповідає філософії, і може призвести до проблем в майбутньому.
Хоча і погоджуся, що це найпростіший варіант.

Мені ж особисто було б цікаво почитати про правильний варіант: збірку deb-пакетів для таких випадків.
+1webdevbyjoss 04.05.2010 07:36
Ви праві щодо засмічення системи, а ще в такому випадку є просто величезна кількість підводних каменів як от ті що описані в коментарях вище.

Про збірку deb-пакетів мижливо напишіть хтось щоб вже мати найбільш повну інформацію по темі, або я зберуся написати десь пізніше... бо на носі реліз, і часу все не стає на такі дрібні приємності.... :)
Enetri 06.05.2010 08:03
У нас тут починає ще один корисний блог вимальовуватись: "Танці з бубном". Приєднуйтесь :)
Enetri 06.05.2010 08:05
Та заодно підправте заголовка, в частині кампіляції
webdevbyjoss 11.06.2010 10:44
тисну "редагувати" але заголовок редагувати не дозволяє :(
Enetri 11.06.2010 11:00
Так, редагування основного тексту публікації (включно з її власною назвою) доступне лише протягом першого тижня. Такі вже закони природи, і нічого з ними ми не вдіємо.

додати коментар: