PDA

Показать полную графическую версию : Драйвер для винмодема


baks10
19-03-2005, 02:11
Помогите чайнику!
Имею Smart Link Voice 56k PCI-Modem и Suse 9.2. Всвязи с "мягкостью" модема нашел дрова под него в виде исходника. Дрова , судя по "Readme", поддерживают мое ядро. Система правильно распознает модем, но при попытке инсталляции выдает следующее:

linux:~/slmodem-2.9.10 # make
make -C modem all
make[1]: Entering directory `/root/slmodem-2.9.10/modem'
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -o modem_main.o -c modem_main.c
make[1]: gcc: Command not found
make[1]: *** [modem_main.o] Error 127
make[1]: Leaving directory `/root/slmodem-2.9.10/modem'
make: *** [modem] Error 2

Что делать?

ruslandh
19-03-2005, 07:32
Скорей всего у Вас не установлены средства разработки (в частности gcc).

baks10
19-03-2005, 17:15
Пожалуйста, объясните дураку,что такое средства разработки (в частности gcc) и где этого зверя можно найти?

ruslandh
19-03-2005, 17:46
1 Средства разработки - это средства построения задач (драйверов и проч) из исходного кода - см. начальный курс программирования :)
2 gcc - компилятор языка с++
3 Лучше всего искать в дистрибутиве.

baks10
20-03-2005, 17:13
gcc я действительно нашел на диске и установил. Теперь получается вот это:


linux:~/slmodem-2.9.10 # make
make -C modem all
make[1]: Entering directory `/root/slmodem-2.9.10/modem'
gcc -o slmodemd modem_main.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.ohomolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.4/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `dsplibs.o' is incompatible with i386:x86-64 output
dsplibs.o(.text+0x2b61b): In function `ModulusEncoder::progress(unsigned char*,unsigned*)':
: undefined reference to `__moddi3'
dsplibs.o(.text+0x2b649): In function `ModulusEncoder::progress(unsigned char*,unsigned*)':
: undefined reference to `__divdi3'
.
.
.
.
dsplibs.o(.text+0x4b20d): In function `V92ModulusEncoder::progress(unsigned char*, unsigned*)':
: undefined reference to `__moddi3'
dsplibs.o(.text+0x4b256): In function `V92ModulusEncoder::progress(unsigned char*, unsigned*)':
: undefined reference to `__divdi3'
collect2: ld returned 1 exit status
make[1]: *** [slmodemd] Error 1
make[1]: Leaving directory `/root/slmodem-2.9.10/modem'
make: *** [modem] Error 2
linux:~/slmodem-2.9.10 #

Что ей не понравилось в файле dsplibs.o и как это лечить? Может проблема в том, что у меня 64-битная версия линукса?

ruslandh
20-03-2005, 17:36
да, похоже вы правы :

/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.4/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `dsplibs.o' is incompatible with i386:x86-64 output

Хотя это не ошибка, а предупреждение
Но возможно, что вы не делали ./configure

baks10
23-03-2005, 16:49
Я нашел драйвер под этот модем в виде RPM (на своем-же дистрибутиве). Установил его, связи нет.
Утилита ScanModem пишет следующее:

PCIBUS=0000:00:07.0

Providing detail for device at PCI_bus 0000:00:07.0
with vendor-ID:device-ID
----:----
Class 0703: 10b9:5459 Modem: ALi Corporation SmartLink SmartPCI561 56K Modem (
prog-if 00 [Generic])
SubSystem 10a5:5459 Smart Link Ltd.: Unknown device 5459
Flags: bus master, medium devsel, latency 32, IRQ 169
Memory at cffff000 (32-bit, non-prefetchable)
I/O ports at ec00 [size=256]

-----PCI_IDs------- --CompilerVer-
Feature List: Primary Subsystem Distr KernelVer kernel default CPU
./scanModem test 10b9:5459 10a5:5459 SuSE 2.6.8-24-default 3.3.4 3.3.4 x86_64


SmartLink drivers support this modem:
10b9:5459 ALI 5459 SmartPCI561
10b9:5459 Subsystem: 10a5:5459 ALi Corporation SmartLink SmartPCI561 56K Modem (NetoDragon)



Помогите, пожалуйста, это расшифровать, и вообще, что дальше-то делать?

ruslandh
23-03-2005, 20:00
1 Расшифровка :
PCIBUS=0000:00:07.0 - pci -ный адрес шины, где сидит модем.

Class 0703: 10b9:5459 Modem: ALi Corporation SmartLink SmartPCI561 56K Modem (
prog-if 00 [Generic])
SubSystem 10a5:5459 Smart Link Ltd.: Unknown device 5459
Flags: bus master, medium devsel, latency 32, IRQ 169
Memory at cffff000 (32-bit, non-prefetchable)
I/O ports at ec00 [size=256]

Unknown device 5459 -незнакомое устройство для эиого драйвера (но может и будет работать всилу совместимости.)

SmartLink drivers support this modem:
10b9:5459 ALI 5459 SmartPCI561
10b9:5459 Subsystem: 10a5:5459 ALi Corporation SmartLink SmartPCI561 56K Modem (NetoDragon)
- утверждается, что модем поддерживается драйвером

2 Вопрос Некрасова :)
Загрузить и настроить загрузку модуля ядра (драйвер) этого модема.

Загрузить единократно :

modprobe lt_modem
(или
insmod lt_serial
insmod lt_moden
)

Загружать постоянно (зависит от дистрибутива)
прописать в /еtc/modules.conf ....

Хотя там должен быть скрипт lt_checkout, который должен подсказать вам что и куда прописать для вашего конкретного модема.

baks10
25-03-2005, 17:01
Я сделал всё буквально:

linux:~ # modprobe lt_modem
FATAL: Module lt_modem not found.
linux:~ # insmod lt_serial
insmod: can't read 'lt_serial': No such file or directory
linux:~ # insmod lt_moden
insmod: can't read 'lt_moden': No such file or directory

Скрипт lt_checkout тоже не нашел, одним словом чайник. Система определяет модем, но драйвер, уже установленный, определить не может.

juvio
25-03-2005, 17:37
baks10 для того, чтобы установить мод, он должен быть доступен ядру. Может он лежит фиг знает где.




© OSzone.net 2001-2012