administrator de blog lipsă de asamblare module de kernel pentru platforma Android

Asamblarea modulelor kernel lipsă pentru platforma Android


Acum trebuie să instalați toolchain pentru compilarea pentru Cross compilație sub platforma ARM. Acest lucru a fost găsit într-unul dintre site-urile proiectului Linaro. Descărcați toolchain corectă


Și stabilește


Pentru a lucra menuconfig am instalat pachetul libncurses5-dev.


În continuare, se prepară kernel să fie compilate


În acest stadiu, este important să se precizeze valoarea KERNELRELEASE variabile, în caz contrar unitatea nu va porni. După încheierea formării am inclus în menuconfig vrei să modul ( „Device Drivers“ / „suport“ dispozitiv de rețea / "Dispozitiv / TAP suport pentru driver universal TUN")


Și vrei ca eu să pun împreună un modul


Apoi, va primi drepturi de root pentru a instala module / sistem / lib / module


Acum, încercați să încărcați un modul


Acum comanda - puteți pune OpenVPN.

întrebare Chaynikovsky.
Ubuntu 12.10 x64

/linux-2.6.35.7$ face module ARCH = braț CROSS_COMPILE = braț-eabi- O = construi KERNELRELEASE = 2.6.35.7-perf
face [1]: braț-EABI-gcc: comanda nu a fost găsit
Utilizarea /home/vitali/linux-2.6.35.7 ca sursă pentru kernel
GEN /home/vitali/linux-2.6.35.7/build/Makefile
CHK include / linux / version.h
CHK includ / generate / utsrelease.h
face [2]: `includ / generate / Mach-types.h„nu necesită actualizare.
nucleu CC / bounds.s
/ Bin / sh: 1: braț EABI-gcc: nu a fost găsit
face [2]: *** [kernel / bounds.s] Eroare 127
face [1]: *** [prepare0] Eroare 2
face: *** [sub-make] Eroare 2

Calea verificat. Chiar și pus / home / vitali / android-toolchain-EABI / bin la partea de sus
braț-EABI-GCC în loc
android-toolchain-EABI reinstalat

Poate că aveți un tulcheyn pe 32 de biți și pur și simplu nu rulează pe sistemul pe 64 de biți. Încercați să porniți-braț EABI-GCC în terminal.

Caut o oportunitate de a utiliza ecranul tactil mare (Touch monitor) la set-top box, care ruleaza pe Android 5.1
Cumparata Tronsmart Vega S95 cu speranța că în cazul în care dispozitivul este un pic mai ferm și să sprijine ecranul tactil va fi. Am încercat cu el 2 monitor (Iiyama ProLite T2435MSC-B1 și HP S230tm), dar computerul nu răspunde la un ecran tactil.
Pe YouTube, am văzut mai multe filme cu demonstrație de orice console Android cu ecrane tactile. Aceasta este, în principiu, problema este rezolvată.
reprezentant al companiei Iiyama mi-a spus că monitoarele ihnim au nevoie de un driver standard "Touch HID".
Întrebarea mea este: cum să verificați în Android, dacă există un driver în ea „HID Touch“, iar dacă nu-l au, cum să-l adăugați?

Pentru început, aș conecta un monitor la Linux și uite va funcționa sau nu. Dacă funcționează, atunci uite ce module sunt utilizate. În jessie pentru atingere hid există doar acest lucru:

$ Găsiți / lib / module / `uname -r` / -name '* * hid tactil *'
/lib/modules/3.16.0-4-686-pae/kernel/drivers/hid/hid-keytouch.ko
/lib/modules/3.16.0-4-686-pae/kernel/drivers/hid/hid-multitouch.ko

Pentru a asambla modulul de kernel în Android trebuie să aveți codul sursă al kernel-ului este că utilizează Android și configurația. Ar trebui să meargă pe xda-developers.com sau forum.4pda.ru - poate ajuta acolo.

O întrebare câteva trecere. Va modulul asamblat, sau mai degrabă un set de module care vin împreună cu kernel-ul, dacă mă va lăsa în jos de bază, și anume sub-meniul din kernel bzImage, să-l cer, și apoi lăsați în jos de module de pe stick-ul și folosind rootexplorer trăgându-le cu înlocuirea vechi? Îmi place să lucrez asa. Motivul pentru care acest lucru nu se face, sau o cauză posibilă de a construi kernel-ul și modulele pe ubuntu x64, respectiv, iar compilatorul a fost folosit de sistemul de Ministerul Sănătății acasă și platforma de dispozitiv pe care toate acestea ar trebui să funcționeze x86. procesor Intel.

În conformitate cu descrierea ta nu este clar pentru mine dacă orice nucleu nou boot-at sau care dă o eroare la încercarea de a încărca module.

Noul kernel a pornit și să fie difuzate. Când încercați să instalați modulul fie l-am dat: cheia necesară nu este disponibil
Am rezolvat această problemă prin schimbarea configurației în configurare devaysa și capul Makefile. CONFIG_MODULE_SIG_ALL schimbat CONFIG_MODULE_SIG, precum și alte controale, CONFIG_MODULE_SIG_FORCE și algoritmi SHA-512 set nu este setat. Aceasta a rezolvat problema semnăturilor o dată pentru totdeauna. Dar nu a fost o altă problemă. Gyro driver nu funcționează. Da, eu nici măcar nu știu unde să-l și pune în cazul în care pentru a obține. Presupun că aceasta se bazează pe mpu3050 cip, dar nu se mai colectează înțeleg. Prin modul în care am nu a trebuit să fie instalat chiar toate modulele din nucleul de stoc, s-au ridicat pentru tine. Pop novosobrannye nu este necesar. Colectarea nucleu de la producator sursa ofsayta. Cine ar putea fi util pentru a rezolva problema cu cheia de răspuns necesar nu este disponibil. Este adevărat că acest lucru se aplică numai recompilați kernel-ul. În alte cazuri, trebuie să ștergeți mai întâi modulul de semnătură din kernel.
Andrey Tataranovich, nu știu ce poți veni cu un giroscop. Pur și simplu nu pot ghici chiar și în cazul în care pentru a începe săpat. Internetul nu a găsit un răspuns pe această temă.

Relativ la modulul giroscop - să fie întrebat pe forumuri relevante precum xda-developers.com, 4pda.ru/forum/ etc. Există o șansă de a găsi pe cineva care știe răspunsul la întrebarea ta.