j’ai dejà fait une pipo la dessus, mais je ne le retrouve plus.
quand tu fais une compilation qui necessite les headers du noyau, il va chercher les .h dans /usr/src/linux
Si tu as compilé ton noyau, /usr/src/linux pointe en général vers les sources de ton noyau, et c’est là qu’il prend les .h .
A défaut, tu peux faire pointer /usr/src/linux vers le répertoire ou sont installés tes headers.
Voila l’utilité essentielle des paquets [kernel|linux]-image et [kernel|linux]-headers.
Maintenant, comment sont ils construits: au moment d’un make-kpkg buildpackage, make-kpkg produit dans /usr/src une serie de 4 .deb:
-image (le noyau binaire à installer pour rebooter dessus),
-sources (les sources éventuellement retouchées avec lesquelles tu as compilé, pour les réinstaller eventuellement sur une autre machine,
-headers (qui contient les .h, pour compiler des modules sur une autre machine ou tourne le -image, sans avoir besoin de reinstaller les sources complètes),
-doc
Une image, sans les headers ou les sources, est limitée aux modules déjà compilés. Donc, si ton noyau est bien un 2.6.16-2-686, que tes sources ne sont pas déployées, et que tu veux pouvoir continuer à compiler des modules si nécessaires, il te faut un des deux fichiers headers (le 2.6.16-2 tout court contient des headers pour d’autres architectures que la tienne - inutiles donc - , et c’est pour ça qu’il est plus gros et que je le supprimmerais plutot que l’autre).