Обобщаю опыт по установке opensasc-ng на Ubuntu 9.10 (ядро 2.6.31)
Перед установкой проверяем и устанавливаем недостающие пакеты :
sudo apt-get install linux-headers-`uname -r` build-essential
subversion openssl gettext libssl-dev screen mcДля редактирования и перемещения файлов я использую MC , что и Вам советую.
Предполагается, что у вас есть source для вашего kernel . Проверяем наличие :
/lib/modules/'uname -r'/build
/lib/modules/'uname -r'/source Предполагается, что у Вас установлена и настроена DVB-S(S2) карта с драйверами
из ядра.В ядре 2.6.31 присутствуют драйвера для большинства DVB устройств.
Выкачиваем последнюю версию :
svn co http://svn.assembla.com/svn/open-sasc-ng/В домашнем каталоге у нас появилась директория /open-sasc-ng/
Создадим каталог /home/'user'/opensascng и скопируем туда директорию open-sasc-ng
из каталога home/'user'/open-sasc-ng/trunk/ .Затем удалим /home/'user'/open-sasc-ng
Исправления 1. Патчим длинный ECMДля этого открываем для редактирования файл
#/opensascng/open-sasc-ng/sc/PLUGINS/src/sc-src/systems/cardclient/newcamd.c
И меняем строку на
#define CWS_NETMSGSIZE=272
Для того, чтобы прошла конфигурация для ядра 2.6.31 уважаемый pawel5870 написал
патч https://opensvn.csie.org/traccgi/opensascng/ticket/58, который при
ближайшем рассмотрении заключается в нескольких элементарных действиях : 2. Открываем в редакторе (в MC по F4) файл #/opensascng/open-sasc-ng/dvbloopback/module/dvbloopback.h
Строку DVBLB_CMD_OPEN = 0 меняем на DVBLB_CMD_OPEN = 4 (стр.20)
Сохраняем изменения
3. Далее открываем файл#/opensascng/open-sasc-ng/dvbloopback/module/dvblb_proc.c
И удаляем строки :
175: lbdev->procfile->owner = THIS_MODULE;
187: dvblb->procdir->owner = THIS_MODULE;
196: dvblb->procfile->owner = THIS_MODULE;
221: procdir->owner = THIS_MODULE;
Сохраняем изменения.
4. В процедуру dvbloopback/src/process_req.c в строку 120 вставим return 0;Получиться :
}
return 0;
}
static cmdret_t do_cmd(struct list_head *list, struct parser_cmds *pc,
5. И в Makefile добавим :
DEFINES += -D__KERNEL_STRICT_NAMES
После :
DEFINES += -DRELEASE_VERSION=\"$(VERSION)\"
DEFINES += -D__KERNEL_STRICT_NAMES 6. Открываем в редакторе plugin_cam.c строку 631Вместо
print(outstr);Набираем
printf("%s", (const char*)outstr); 7. Открываем sc/thread.cpp строку 206 и правим
SetDescription(Description);на
SetDescription("%s", Description); Переходим в home/'username'/opensascng/open-sasc-ng/
(cd /home/'username'/opensascng/open-sasc-ng/)
и выполняем
./configure Далее получаем драйвер
dvbloopback.ko :sudo make moduleИ , наконец, сам бинарник
sasc-ng:sudo make На выходе у нас есть
dvbloopback.ko (
#/home/'username'/opensascng/open-sasc-ng/dvbloopback.ko)
и бинарник
sasc-ng(
#/home/'username'/opensascng/open-sasc-ng/sasc-ng)
Запускаем
insmod dvbloopback.koпроверяем с dmesg и получаем типа такого
dvbloopback/module/dvb_loopback.c: frontend loopback driver v0.0.1
dvbloopback: registering 1 adaptersDVB: registering new adapter (DVB-LOOPBACK) У нас появился adapter1.
Запускаем sasc:
sasc-ng -j 0:10-реальный адаптер, 1-виртуальный (DVB-LOOPBACK)
Делаем автозапуск и интеграцию в систему Открываем в редакторе файл
# /opensascng/open-sasc-ng/contrib/run-sasc-ngИ правим в шапке соответствующие строки :
# Директория, куда кладем dvbloopback.ko
DRIVERDIR="/usr/local/src/mythtv.cvs/sasc-ng"
# Путь к бинарнику sasc-ng
SASCPRG="/usr/local/src/mythtv.cvs/sasc-ng/sasc-ng"
# Путь к директории,где лежит cardclient.conf для шары
CAMDIR="/etc/camfiles"
# Количество виртуальных DVB, создаваемых sasc-ng
ADAPTERS="1"
# Опции запуска SASC-NG.
OPTIONS="-j 0:1"
Сохраняемся
Копируем dvbloopback.ko и бинарник sasc-ng туда, куда мы указали. В моем примере
в /usr/local/src/mythtv.cvs/sasc-ng/
cardclient.conf кладем в /etc/camfiles/
cardclient.conf создаем в любом редакторе и прописываем туда
параметры,полученные у шаринг-провайдера :
newcamd:сервер:10000:0/0500/ffff:login:parole:0102030405060708091011121314
Далее переносим файлы в нужные места от root:
cp /home/'user'/opensascng/open-sasc-ng/contrib/sascd.initd /etc/init.d/sascd
cp /home/'user'/opensascng/open-sasc-ng/contrib/run-sasc-ng /usr/local/bin/runsascДаем права :
chmod 755 /etc/init.d/sascd
chmod 755 /usr/local/bin/runsascОткрываем в редакторе или создаем файл
/etc/default/sascc
Вставляем туда следующее и сохраняем:
# /etc/default/sascc
# Default SASC-NG startup config
# Change to 1 to enable sasc-ng's init-script
ENABLED=1
# DVBLoopback Device creation timeout (in seconds)
TIMEOUT=60
Старт из-под root :
/etc/init.d/sascd {start|stop|restart}Если не стартует, поменять в файле
sascd !# /bin/sh на
!# /bin/bashДля автозагрузки при старте :
Дебиан/Ubuntu :
update-rc.d sascd defaultsБольшинство других дистров :
ln -s /etc/init.d/sascd /etc/rc#.d/S40sascdВ Kaffeine 1.0 pre
Television > Configure television > adapter 1 > Прописываем настройки на свой спутник. Для НТВ+ > LNB1 settings > custom > LOF 10750 > EutelsatW4 (его нужно внести в ./kde/share/apps/kaffeine/scanfile.dvb , который появится после GeneralOptions > Update scan data over internet). Далее Television>Channels>Scan
21/09/2011
Взять opensasc-ng можно :
svn co http://svn.assembla.com/svn/open-sasc-ng/
Тогда в домашней директории появится каталог open-sasc-ng
Это пропатченый opensasc. Компилится на ядре 2.6.34
или на http://aur.archlinux.org/packages.php?ID=27885