Ключевые слова:modem, zyxel, linux, winmodem, (найти похожие документы)
From: Scor2k <scor2k at mf dot volsu dot ru>
Newsgroups: Волгоград Linux User Group
Date: Mon, 18 Jan 2004 14:31:37 +0000 (UTC)
Subject: Настройка WinModem ZyXEL 56k int
Оригинал: http://volgograd.lug.ru/wiki/library/zyxel?v=121d
Введение
Для настройки внутреннего модема ZyXEL 56k int я использую дрова
pctel-0.9.6. Откуда брал, точно не помню... где-то на linmodems.org.
Чем меня не устраивают дрова из sisyphus? Ну например тем,
что собранный пакет не работает... т.к. собран для другой версии
модемов.
Требования
Для успешной сборки необходимо:
* архив с исходиками модуля pctel-0.9.6
* gcc2.96
* automake
* autoconf
* kernel-headers (для вашего ядра)
Собираем
Распаковываем pctel-0.9.6.tar.bz2 в какую-нибудь папочку, например
/tmp с помощью комманды:
tar -xjf pctel-0.9.6.tar.bz2
Заходим в полученную папку, и запускаем файл configure, необходимый
для сборки модулей
./configure --with-hal=pct789 --with-kernel-includes=/usr/include/linux-2.4.25-std-up/include
/usr/include/linux-2.4.25-std-up/include - папка с заголовочными
файлами, в вашем случае linux-2.4.25-std-up может быть другим
(rpm -ql kernel-headers-...-up)
Если он прошел проверку на modversion.h то значит вы правильно указали
путь к заголовочным файлам ядра, иначе нужно изменить путь...
Далее, обычно идут ошибки :) первая ошибка:
checking for Linux kernel version >= 2.4.0... ./configure: line 3344: test: 2-s
td-up: integer expressione expected
идем в файлик configure на строку 3336 и правим строчку
real_kernel_version=.... на real_kernel_version=2.4.20
Опять запускаем configure... и получаем следующую ошибку
checking for Linux kernel version >= 2.4.7...
./configure: line 3448: test: 2-s td-up: integer expression expected
Идем на строчку 3440 и делаем real_kernel_version=2.4.20
После чего опять запускам configure, которое должно закончится успешно :)
Если все хорошо, то запускаем make. Если нет, пишите... разберемся.
После непродолжительной сборки можно делать make install. Напомню,
что make install нужно делать от root.
Теперь нужно сделать символическую ссылку для корректной работы
модема:
ln -sf /dev/ttyS15 /dev/modem
Автозагрузка
Для автозагрузки модулей по требованию, необходимо в файлике
/etc/modules.conf прописать следующие строчки:
alias char-major-62 pctel
post-install pctel insmod -k ptserial
Все. Теперь вы являетесь счастливым обладателем работающего модема :)
Patch
Если вам лень (или просто напряжно) делать изменения в configure,
то именно для вас я сделал patсh, который проделает все эти операции
за вас :).
Для применения нужно скопировать текст, приведенный ниже,
в какой-нибудь файл; скопировать этот файл в папку с файлом configure,
и выполнить следующую комманду:
patch -p1 configure name_of_file_with_patch
Ниже идет содержимое файла с патчем:
--- configure 2002-11-08 12:45:32 +0300
+++ configure_new 2004-03-24 20:17:58 +0300
@@ -3333,7 +3333,7 @@
echo "$as_me:$LINENO: checking for Linux kernel version >= $min_kernel_version" >&5
echo $ECHO_N "checking for Linux kernel version >= $min_kernel_version... $ECHO_C" >&6
- real_kernel_version="`eval echo $KERNEL_VERSION | sed -e 's/-[a-zA-Z0-9][^-]
*$//g' | awk -F'.' '{ print $1"."$2"."$3 }'`"
+ real_kernel_version=2.4.20
k_version="`echo $real_kernel_version | sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`"
k_patch="`echo $real_kernel_version | sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`"
@@ -3437,7 +3437,7 @@
echo "$as_me:$LINENO: checking for Linux kernel version >= $min_kernel_version" >&5
echo $ECHO_N "checking for Linux kernel version >= $min_kernel_version... $ECHO_C" >&6
- real_kernel_version="`eval echo $KERNEL_VERSION | sed -e 's/-[a-zA-Z0-9][^-]
*$//g' | awk -F'.' '{ print $1"."$2"."$3 }'`"
+ real_kernel_version=2.4.20
k_version="`echo $real_kernel_version | sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`"
k_patch="`echo $real_kernel_version | sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`"