Автор Тема: компилиране на модули  (Прочетена 1593 пъти)

Michev

  • Участници
  • ***
  • Публикации: 5
    • Профил
компилиране на модули
« -: Jul 31, 2007, 21:56 »
Здравейте.
Снощи си качих Debian etch (2.6.18-4-686). Изтеглих си сорс кода на модула rt73 за безжичния ми уаерлес. Опитах да го компилирам, но без успех '<img'>.
винаги излиза с грешката : "*** No rule to make target `modules'. Stop.". След това изтеглих същия модул от саита на дебиан, и опитах да го компилирам с module-assistant, koйто върна същата грешка '<img'>(.
Изпробвах компилация на всякакви модули и грешката си остава една и съща.
Въпроса ми е какво пропускам?

ПС: gcc4.1, automake, autoconf, kernel-headers са инсталирани
Активен

mom

  • Напреднали
  • *****
  • Публикации: 266
  • Distribution: Ubuntu
  • Window Manager: Compiz
    • Профил
компилиране на модули
« Отговор #1 -: Jul 31, 2007, 22:23 »
Вероятно пропускаш
Примерен код
make [menu][x]config
Активен

Michev

  • Участници
  • ***
  • Публикации: 5
    • Профил
компилиране на модули
« Отговор #2 -: Jul 31, 2007, 22:32 »
Би ли ми обяснил това за какво да го стартирам, и какво ще ми помогне?
А и от коя директория трябва да го стартирам?
До колкото помня .. май с тоя конфиг си конфигурирам кърнел-а когато го прекомпилирам, а аз нямам за цел да го прекомпилирам.
Активен

mom

  • Напреднали
  • *****
  • Публикации: 266
  • Distribution: Ubuntu
  • Window Manager: Compiz
    • Профил
компилиране на модули
« Отговор #3 -: Jul 31, 2007, 23:38 »
От директорията където ти е сорса на ядрото.

Сега като се позамислям вероятно си прав, че конфиг за ядрото май не ти трябва. Но пък грешката, която даваш, навежда на мисълта за липсващ конфиг на ядрото.

Напиши по-точно какви стъпки си предприел за компилацията. Надявам се другите съфорумници да дадат някоя по-свежа идея.

Успех!
Активен

Michev

  • Участници
  • ***
  • Публикации: 5
    • Профил
компилиране на модули
« Отговор #4 -: Jul 31, 2007, 23:55 »
Примерен код

thec0der:~# cd RT25USB-SRC-V2.0.8.0
thec0der:~/RT25USB-SRC-V2.0.8.0# ./Configure


-------------------- Ralink RT2500 Station Configuration --------------------

  Linux kernel source directory [/usr/src/linux-2.6.18-4-686]: /usr/src/linux-headers-2.6.18-4-686/

  Linux kernel source directory : /usr/src/linux-headers-2.6.18-4-686/

  Module install directory : /lib/modules/2.6.18-4-686/kernel/drivers/net

thec0der:~/RT25USB-SRC-V2.0.8.0# make
make -C /lib/modules/2.6.18-4-686/build SUBDIRS=/root/RT25USB-SRC-V2.0.8.0 modules
make[1]: Entering directory `/lib/modules/2.6.18-4-686/build'
make[1]: *** No rule to make target `modules'.  Stop.
make[1]: Leaving directory `/lib/modules/2.6.18-4-686/build'
make: *** [all] Error 2
thec0der:~/RT25USB-SRC-V2.0.8.0#

Активен

d1saster

  • Напреднали
  • *****
  • Публикации: 182
    • Профил
компилиране на модули
« Отговор #5 -: Aug 01, 2007, 01:56 »
След като започва компилирането ме притеснява ето този ред:

make -C /lib/modules/2.6.18-4-686/build SUBDIRS=/root/RT25USB-SRC-V2.0.8.0 modules

Предполагам в главната директория на драйвера има други директории: modules, firmware или нещо подобно. Мисля че make трябва да се стартира от друга директория.



Активен

ivo1204

  • Напреднали
  • *****
  • Публикации: 987
    • Профил
компилиране на модули
« Отговор #6 -: Aug 01, 2007, 04:12 »
Ти кой точно драйвер копмилираш .Гледам ,казваш rt73 , a после това ,което си дал е от друго...
http://rt2x00.serialmonkey.com/wiki/index.php?title=Downloads
Ако е rt73 ,(за USB)  , тогава е най-долния, отиваш е директория modules и make .
Има доста изисквания , то затова и  module-assistant не винаги може да се справи.
Например виж дали :
ls -l /lib/modules/`uname -r`/build
сочи правилно до сорса на ядрото.



Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
компилиране на модули
« Отговор #7 -: Aug 01, 2007, 06:27 »
Michev,

Мисля, че освен linux-headers ти трябва и останалия сорс на ядрото.

d1saster,

Начина за компилиране на модули извън ядрото е следния: инструктира се make да отиде в главната директория на ядрото (-C /lib/modules/...), в SUBDIRS се указва директорията в която е модула (SUBDIRS=`pwd`) и се дава target modules.
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

Michev

  • Участници
  • ***
  • Публикации: 5
    • Профил
компилиране на модули
« Отговор #8 -: Aug 01, 2007, 09:06 »
В случая не се притеснявайте кой модул се мъча да компилирам. Просто съм си изтеглил няколко с които искам да видя как ще се държи УСБ джаджата.
Цитат

Предполагам в главната директория на драйвера има други директории: modules, firmware или нещо подобно. Мисля че make трябва да се стартира от друга директория.

специално на този модул други папки няма. При останалите пък в руут-а им няма мейк файлове (в папка модулес имат).
Цитат

Например виж дали :
ls -l /lib/modules/`uname -r`/build
сочи правилно до сорса на ядрото.

Не. не ми сочи към сорса. Той ми се намира в /usr/src/kernel-source-2.6.8/
Активен

ivo1204

  • Напреднали
  • *****
  • Публикации: 987
    • Профил
компилиране на модули
« Отговор #9 -: Aug 02, 2007, 04:19 »
#cd /tmp
#wget http://www.ralinktech.com.tw/data/RT25USB-SRC-V2.0.8.0.tar.gz
#tar -xvf RT25USB-SRC-V2.0.8.0.tar.gz
#mv /lib/modules/`uname -r`/build  /lib/modules/`uname -r`/build-backup
#mkdir /tmp/source
#ln -s  /tmp/source /lib/modules/`uname -r`/build
#cd RT25USB-SRC-V2.0.8.0
#make
debian:/tmp/RT25USB-SRC-V2.0.8.0# make
make -C /lib/modules/2.6.23-rc1-mm1/build SUBDIRS=/tmp/RT25USB-SRC-V2.0.8.0 modules
make[1]: Entering directory `/tmp/source'
make[1]: *** No rule to make target `modules'.  Stop.
make[1]: Leaving directory `/tmp/source'
make: *** [all] Error 2
debian:/tmp/RT25USB-SRC-V2.0.8.0#

Обаче:
debian:/tmp/RT25USB-SRC-V2.0.8.0# make -C /lib/modules/`uname -r`/build-backup SUBDIRS=$(pwd) modules
make: Entering directory `/usr/src/linux-2.6.22'
  CC [M]  /tmp/RT25USB-SRC-V2.0.8.0/rtusb_main.o
................................
т.е изпълнява се командата "make modules" за ядрото ...
От директорията ,където е сорса на ядрото , изглежда така:
 debian:/usr/src/linux-2.6.22#  make  SUBDIRS=/tmp/RT25USB-SRC-V2.0.8.0 modules
  CC [M]  /tmp/RT25USB-SRC-V2.0.8.0/rtusb_main.o
...............................................................



Активен

dedmin

  • Напреднали
  • *****
  • Публикации: 456
    • Профил
компилиране на модули
« Отговор #10 -: Aug 02, 2007, 08:45 »
Error



Активен

ivo1204

  • Напреднали
  • *****
  • Публикации: 987
    • Профил
компилиране на модули
« Отговор #11 -: Aug 02, 2007, 14:09 »
Модулите rt61 и rt73 се компилират без проблем , другите не. Моята wireless карта  (чипсет RaLink RT2561/RT61 rev B 802.11g  ,1814:0302 , Subsystem: 1948:3c83) работи перфектно с rt61 , още  и с  ndiswrapper.
Активен

Michev

  • Участници
  • ***
  • Публикации: 5
    • Профил
компилиране на модули
« Отговор #12 -: Aug 02, 2007, 18:08 »
Sry za latinicata ama i s kirilicata imam prblem '<img'>

Ta snoshti uspqh da si kompiliram modula uspeshno.
Problema si e bil v men. Kato sym si slagal src-to na kernel-a sym opleskal neshto, a i e lipsval .conf fail-a ot src papkata.
4rez Synaptic si preinstall src-to na kernel-a, copnah si .conf ot /boot/ i uspeshno kompilirah modula.
Eto i malko info za usb wireless-a
belkin F5D7050
Bus 001 Device 003: ID 050d:705a Belkin Components

Tova wirelss4e si trugva kakto trqbva s rt73 modula. Predi vreme sym go puskal uspeshno i s rt2500.
Za wifi hakerite - teglete modula ot http://www.antirez.com/page/rt73.html
Активен

ivo1204

  • Напреднали
  • *****
  • Публикации: 987
    • Профил
компилиране на модули
« Отговор #13 -: Aug 03, 2007, 07:53 »
И при мен е така , подкарвал съм го и с другите (rt2x..), ама e мъка ... 8 пъти прекомпилирах ядрото ,докато им угодя на изискванията  на тия драйвери , а после драйвера работи калпаво , а за ядрото да не говорим ( то се иска  debugfs , и хиляди щуротии , които го правят бавно ) . Та дигнаш ръце ,не се разправям с тия драйвери повече .Грешки , проблеми ,с едно ядро се компилира ,с друго ,не и т.н. Май не се потдуржат ,не знам.
Ако обаче ти се занимава , тия (svc , rt2x00-cvs-daily.tar.gz ) ,май трябва да се теглят с git ,
cvs май не обновява. Пробвай и с  "ndiswrapper " , като си изтеглиш "win" драйверите от сайта на производителя  , при мен това също работи добре.
П.П.
Като инсталирах Sabayon  , ми сложи автоматично rt2x00,rt61pci ,и ... няма интернет. Махнах ги ,сложих rt61 и ... тръгна.



Активен