web-dev-qa-db-fra.com

Comment imprimer un var en utilisant echo o print dans un fichier Android.mk de construction NDK pour déboguer la compilation?

J'essaie d'imprimer des informations supplémentaires lors de la compilation d'une bibliothèque à l'aide de ndk-build.

Par exemple:

LOCAL_PATH := $(call my-dir)
all:;echo $(LOCAL_PATH)
echo: $(LOCAL_PATH)
print:echo "i'm not working"

Quand je fais ndk-build, il suffit de compiler tous les Android.mk, mais je ne reçois pas l'écho de la console. J'ai lu le GNU make info (ndk-build est juste un petit GNU make), et certains articles qui disent que l'écho doit fonctionner en utilisant un $ (VAR) ) mais cela ne fonctionne pas sur mon cas.

Une idée?

64
vgonisanz

Utilisation

LOCAL_PATH := $(call my-dir)
$(warning $(LOCAL_PATH))
116
Andrey Kamaev

La fonction la plus correcte à appeler est "$ (info ...)":

LOCAL_PATH := $(call my-dir)
$(info $(LOCAL_PATH))
49
nellute

Les écrans suivants sont disponibles dans Android.mk:

  • erreur: débogage de l'impression + arrêt de la génération
  • info: impression de débogage de base
  • avertissement: identique à info mais affiche le numéro de ligne où il a été inséré

Ci-dessous quelques exemples:

$(error this is the error message that will stop the build process)
$(warning this the warning msg)
$(info this the info msg)
23
PedroSw7