Comment puis-je ajouter un chemin pour le module de noyau makefile
Comment puis-je ajouter un chemin pour le module de noyau makefile? Je veux inclure "test_kernel.h" dans test_module.c. le "test_kernel.h" réside dans le répertoire "inc"
J'ai essayé dans la solution suivante dans mon Makefile, mais il ne fonctionne pas:
obj-m += test_module.o
test_module:
$(MAKE) -C "$(LINUX_DIR)" -Iinc $(MAKE_OPTS) modules
OriginalL'auteur MOHAMED | 2012-04-16
Vous devez vous connecter pour publier un commentaire.
Vous devriez faire usage de
EXTRA_CFLAGS
dans votreMakefile
. Essayez quelque chose sur ces lignes:Voir la section 3.7
Compilation Flags
section ici.Espérons que cette aide!
OriginalL'auteur another.anon.coward
êtes-vous sûr que vous avez spécifié correctement les inclure dans votre fichier?
par exemple:
au lieu de
OriginalL'auteur ticcky
-I
est un GCC drapeau, pas un drapeau.1 Vous avez besoin pour passer une variable à vos "sous" Rendre le processus; peut-être quelque chose comme ceci:où
CPPFLAGS
est un standard de Rendre variable qui est utilisée dans les règles implicites. N'hésitez pas à utiliser votre propre variable au lieu de cela, et de s'assurer qu'il est utilisé de façon appropriée dans la sous-make.Le Faire manuel donne plus de détails sur la communication des variables entre Faire des instances: http://www.gnu.org/software/make/manual/make.html#Variables_002fRecursion.
1. En fait, il est aussi un indicateur, mais pour quelque chose de complètement différent.
Oui, j'ai eu un peu mal. J'ai mis à jour ma réponse.
même avec CPPFLAGS="-Iinc" ne fonctionne pas
Est votre sous-faites à l'aide de règles par défaut pour les C de compilation? Si non, les règles explicites utiliser le
CPPFLAGS
variable?OriginalL'auteur Oliver Charlesworth