Compilarea driverelor din surse, asplinux

Citat:
rrraD scrie:

mad_shef a scris:
#error Folosirea incorectă a anteturilor glibc pentru un modul de kernel

glibc? costa kernel-devel?

glibc merită cu siguranță, dar kernel-devel nu este sigur. Poți să vezi cumva?






Sau poate că este în codul sursă, este un fel de kernel 2.3.13 sau nu am înțeles nimic.
Dar în fișierul linuxver.h există o astfel de linie
dacă (LINUX_VERSION_CODE Ce să faci și cine e vina? (Există multe suspiciuni cu privire la mâinile mele strâmbe, dar nu există încă alții).

Citat:
mad_shef scrie:
. dar kernel-devel nu este sigur. Poți să vezi cumva?

Citat:
dacă (LINUX_VERSION_CODE Ce să faci și cine e vina? (Există multe suspiciuni cu privire la mâinile mele strâmbe, dar nu există încă alții).

Șoferul poate fi universal. Comenzile de preprocesor care verifică versiunea kernel servesc pentru a adapta driverul la kernelul folosit.

mad_shef a scris:
dacă (LINUX_VERSION_CODE

Aceasta este o verificare pentru versiunea de kernel, atunci trebuie să ne uităm la cod. Înțelesul său este următorul: În versiuni mai înalte, începând cu kernelul 2.3.13, ceva sa schimbat sau a fost adăugat.

sergeil a scris:
kernel-devel

Puțin ajutor, există unele mărci de antet și fișiere, în loc de sursă, începând cu ASPlinux v10.

În primul rând, probabil că nu aveți codul sursă pentru kernel, trebuie să le actualizați din surse și să le compilați.
În al doilea rând, dacă versiunea de kernel pe care o aveți este 2.6.XX, atunci ar trebui să verificați modul în care conducătorul auto merge, deoarece din filiala 2.6.XX, ansamblul modulului de kernel sa schimbat.
Deci, face uname -sr și pisica / etc / asplinux-de presă și de a publica. Vom gândi mai departe.

Citat:
sergeil a scris:

Citat:
mad_shef scrie:
. dar kernel-devel nu este sigur. Poți să vezi cumva?

Citat:
dacă (LINUX_VERSION_CODE Ce să faci și cine e vina? (Există multe suspiciuni cu privire la mâinile mele strâmbe, dar nu există încă alții).

Șoferul poate fi universal. Comenzile de preprocesor care verifică versiunea kernel servesc pentru a adapta driverul la kernelul folosit.







Se pare că lipseste kernel-devel. În orice caz, nu au fost primite informații după intrarea în această linie. Am rupt linia rpm -qa | grep kernel- *
și primite
kernel-2.6.9-1.667asp
kernel-utils-2.4-13.1.39
După cum am înțeles, trebuie să instalez kernel-devel. Voi încerca să săpat pe Internet.

mad_shef a scris:
Se pare că lipseste kernel-devel. În orice caz, nu au fost primite informații după intrarea în această linie. Am rupt linia rpm -qa | grep kernel- *

Da, ai dreptate că acest pachet lipsește. Mai mult, nu este în repozitoriul meu local, pe care l-am făcut din pachetele RPM din discurile de instalare.

kernel-doc.noarch - nu prea mult ajutor, există doar documentație.

mad_shef a scris:
kernel-2.6.9-1.667asp

Conform versiunii de kernel aveți ASPlinux v10. Sursele kernel-ului sunt localizate aici.

Citat:
sergeil a scris:

mad_shef a scris:
il_linux.c: 1048: avertisment: `il_larq_timer 'definit, dar nu utilizat
face: *** [il_linux.o] Eroare 1

Acordați o legătură cu sursele driverului.
Voi incerca sa compilati sub vanilie - 2.6.16.16. Sau cel puțin sub vanilie - 2.4.32

mad_shef a scris:
Am încercat gmake LINUXVER = 2.6.9> /usr/src/proba.txt, dar scrie doar prima linie acolo.

gmake LINUXVER = 2.6.9> /usr/src/proba.txt 2> 1
și vor exista toate celelalte mesaje, dar nu va ajuta prea mult. Până acum, rezultatul este negativ.

Citat:
mad_shef scrie:

Citat:
Conform versiunii de kernel aveți ASPlinux v10. Sursele kernel-ului sunt localizate aici.

Surse pe care le am. Cum ies out kernel-devel de acolo? Și cum puteți să o instalați? Și se pare că codul sursă pentru acest pachet nu este.

Sunt sigur că mergeți pe cale greșită. Pentru a construi driverul aveți nevoie nu numai de codul sursă, ci și de kernelul actual al acestei versiuni.
Vă sugerez mai întâi să verificați versiunea "de ce nu merg pentru actualul kernel". În procesul de clarificare, în același timp, devine clar ce este necesar din "codul sursă".

Bine, construiești un modul de kernel proiectat să construiască pentru versiunile 2.4.XX și 2.2.XX. Pentru a construi pentru 2.6.XX, trebuie să rescrieți fișierul Makefile. Începând cu această versiune a kernelului, regulile pentru modulele de construcție s-au schimbat. În plus, trebuie verificat compatibilitatea kernelului API pentru versiunile 2.6.XX pe care le utilizează. În general, trebuie să fie depanat.
Conform documentației, cea mai recentă versiune cu care poate funcționa este 2.4.18.

Citat:
mad_shef scrie:
/usr/include/linux/modversions.h:1:27: #error Modulele nu ar trebui să utilizeze niciodată anteturi de sistem pentru anteturi de kernel,
/usr/include/linux/modversions.h:2:2:29: #error, dar mai degrabă anteturile din pachetul de kernel corespunzător.
/usr/include/linux/modversions.h:3:27: #error Modificare -I / usr / src / linux / include (sau similar) cu
/usr/include/linux/modversions.h:4:2: #error -I / lib / modules / $ (uname -r) / build / include
/usr/include/linux/modversions.h:5:2 :: #error pentru a construi împotriva kernel-ului care rulează în prezent.

gcc nu găsește fișierele antet.
Trebuie să instalați glibc-kernheaders * .rpm, care este în distribuție.

Pentru a compila driverul, în majoritatea cazurilor, pentru kernel-urile 2.6, sursele nu sunt necesare.







Articole similare

Trimiteți-le prietenilor: