Vraag Hoe installeer ik kernel header-bestanden?


ik wil een apparaatstuurprogramma schrijven, maar kan het headerbestand niet vinden, kan iemand me helpen ze te vinden? Ook als iemand kan wijzen op enkele belangrijke sitelinks die echt op prijs worden gesteld


78
2017-11-05 09:00


oorsprong




antwoorden:


Je zou in staat moeten zijn om de kernel header-bestanden voor de momenteel draaiende kernel te installeren door het volgende in een terminal uit te voeren:

sudo apt-get install linux-headers-$(uname -r)

Over het algemeen worden de kernel-headerpakketten linux-header- * genoemd, waarbij "*" de versie en variant (generiek, server, etc.) aangeeft.


106
2017-11-05 18:39



hallo bedankt, maar kun je me vertellen wat wel generiek, server, enz betekent dat ik wil schrijven (kernel-stuurprogramma) - coder
Hierdoor worden de headers niet automatisch geïnstalleerd voor toekomstige updates en moet u deze opdracht elke keer opnieuw uitvoeren. Daarom wordt aangeraden om in plaats daarvan de metapackage te installeren, zoals beschreven in nog een antwoord. - gertvdijk
Opmerking: dit plaatst ze niet in de GCC inclusief pad, je hebt nog steeds nodig -I. - Ciro Santilli 新疆改造中心 六四事件 法轮功
Opmerking: om dit te laten werken, is de regel geschikt deb-src regel moet aanwezig zijn in /etc/apt/sources.list. - Vorac


Je kunt gewoon typen:

sudo apt-get install linux-headers-generic

als je een desktopinstallatie hebt. De apt-get lost de afhankelijkheden op en installeert de juiste versie van kernelheaders.


78
2018-03-16 23:01



en Ubuntu zal ze ook updaten wanneer een nieuwe versie uitkomt - Csq
Of linux-headers-virtual als je een VM uitvoert in een instantie van Openstack ... - BSchlinker
In Debian Wheezy krijg ik de foutmelding "Pakket linux-headers-generic is niet beschikbaar, maar wordt door een ander pakket aangeduid. [...] E: Pakket 'linux-headers-generic' heeft geen installatiekandidaat" - IQAndreas
@IQAndreas het linux-headers-generic pakket is ubuntu specifiek. Op Debian moet je gebruiken sudo apt-get install linux-headers-$(uname -r) - Alexandre Teles


Dit zou een ander probleem moeten dekken wanneer: de draaiende kernel verouderd is, wat betekent dat hij niet meer in de repository staat, noch zijn headers. Dus het beste is om de kernel bij te werken naar de laatste versie in de repository.

linux-generic is een metapakket om de huidige versie van te behouden de kernel & zijn headers:

sudo apt-get update
sudo apt-get install linux-generic

Opmerking: afhankelijk van uw Ubuntu-editie, kijk of u dit nodig hebt linux-lowlatency (Ubuntu Studio), linux-signed-generic of linux-virtual.


13
2018-05-09 13:57



Geen van de andere oplossingen werkte voor mij toen ik probeerde een stuurprogramma te installeren. Dank U. - Sopalajo de Arrierez
een bijna equivalent voor Debian wordt genoemd linux-headers-amd64 (voor amd64-systemen, uiteraard) - hanshenrik


Of als u aptitude hebt geïnstalleerd: sudo aptitude install linux-headers-$(uname -r)


0
2018-03-15 01:46



In wezen hetzelfde. - angulared


deze commando's zouden moeten werken:

sudo apt-get dist-upgrade -y
systemctl reboot
sudo apt-get install linux-headers-$(uname -r)
sudo apt-get upgrade linux-headers-$(uname -r)

voor een betere instructie, check dit video-


-1
2018-02-12 21:53