Android NDK dans Eclipse :: (Ne peut pas exécuter le programme “ndk-build”: raison Inconnue)
Je suis de perdre mon esprit essaie de construire mon NDK projet à partir d'eclipse en utilisant le plugin CDT et j'obtiens l'erreur:-
NDK (Cannot run program "ndk-build": Unknown reason)
L'application fonctionne, mais je perds tout de la sortie de la console pour le processus de génération, c'est un cauchemar lorsque vous essayez de compiler et j'ai à faire sur la ligne de commande.
C'est comment j'y suis arrivé:-
I Downloaded and installed the CDT plugin for Eclipse.
Alors:
Added my JNI folder and also your Android.mk in the JNI directory.
Alors:
Go FILE / NEW / OTHER /C/C++ / ( Convert to a C/C++ Project )
Sur la configuration de mon build target:
Check the project, choose MakeFile Project and Other Toolchain click NEXT
Enfin dans les propriétés du projet:
PROJECT / PROPERTIES / C/C++ uncheck " use default build command" replace "make" with "ndk-build"
Puis, quand il construit, il crache de l'erreur de la console. Bien qu'il compile et met à la génération qui s'exécute sur le périphérique, je ne peux pas le voir tout de la sortie de la construction.
J'ai "ndk-build" dans mon .bash_profile avec les variables suivantes:
:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$ANDROID_NDK
Je peux le compiler à l'aide de ndk-build à partir de la ligne de commande de l'amende. Il semble que Eclipse ne peux pas le voir de mon CHEMIN:
C'est sur Mac OSX, dans Helios de la version 2.
EDIT: Ok, donc cette compile très bien, et la sortie de la compilation est en fait caché sous ce message, c'est loin d'être idéal, comme quand j'ai besoin de revoir ce que les articles ont été construits, je ne peux que son couvert. Comment puis-je me débarrasser de lui?
OriginalL'auteur Dev2rights | 2012-03-08
Vous devez vous connecter pour publier un commentaire.
Il peut sembler stupide, mais avez-vous vérifier s'il y a plusieurs consoles ? Je peux imaginer qu'il y en a un pour le message que vous avez cité, et l'autre pour la sortie de la construction.
Voir aussi cette : la réponse a un lien intéressant, traitant de l'installation, mais aussi liées à l'intégration eclipse.
Ok, après l'âge de jouer avec ce que j'ai trouvé que la réponse a été de cliquer sur le petit écran (affichage Sélectionné console ) icône et qui semble pour afficher les erreurs donc quelque part la sortie est remplacée par ndk-buikd.
OriginalL'auteur rockeye
Dans mon cas, j'ai dû donner le chemin complet de mon ndk-build commande dans eclipse afin de construire:
Eclipse -> Votre Prj -> Clic Droit -> C/C++ Build -> "Constructeur" de groupe: la valeur de "Construire de commande" doit être le chemin complet de quelque chose comme ci-dessous (au lieu de simplement "ndk-build")
/Utilisateurs/vshakya/MySoftware/android-ndk-r8/ndk-build
J'espère que cela aidera d'autres à l'avenir que je viens de perdre 30 minutes pour comprendre cela.
OriginalL'auteur Viren
Veuillez consulter ce lien pour NDK configuration android
http://odroid.foros-phpbb.com/t181-how-to-install-android-ndk
OriginalL'auteur
J'ai eu le même problème et même si la description à http://developer.android.com/tools/sdk/ndk/index.html#Installing pour l'installation du NDK est bon, il ne couvre pas la solution à ce problème fréquent.
Eclipse semble pour vous permettre de configurer des choses dans plusieurs endroits, vous pouvez faire des modifications globales via le menu Fenêtre ou un projet spécifique configurations via l'option Propriétés. La plus simple est d'ajouter le chemin d'accès complet pour le ndk-build (ndk-build.cmd de windows) dans le {Propriétés; C/C++ Build} Construire une boîte de commande.
OriginalL'auteur Pete
Une solution plus facile, construire avec la commande ndk-build du projet eclipse chemin:
Chaque fois que vous modifiez votre code natif.
Pour compiler sous eclipse, j'ai suivi les étapes suivantes:
La prochaine fois que vous compilez, ndk-build V=1 est appelé à la compilation en code natif, et ensuite, compilez Android.
REMARQUE:
Vous devez être en mesure d'utiliser ndk-build dans tous les dossiers sur votre système. La commande détecter où a été appelé, et de regarder pour la jni dossier, à utiliser Android.mk pour compiler tous les code natif.
La structure de base qui rechercher est:
Mais vous pouvez modifier Android.mk chercher le code dans d'autres chemins.
J'espère que cela vous aidera!
vous devez être en mesure d'utiliser ndk-build dans tous les dossiers sur votre système. La commande détecter où a été appelé, et de regarder pour la jni dossier, à utiliser Android.mk pour compiler tous les code natif.
Oh, je vois, je peux appeler ndk-build à partir de tous les dossiers. J'ai le NDK sur mon chemin et il compile bien à partir d'appeler ndk-build à partir du terminal et aussi il compile bien dans eclipse je viens d'obtenir cette erreur qui couvre les erreurs lors de la compilation.
Si vous avez besoin de regarder whats est de la compilation, des lignes de chemins, etc, utilisez la commande: $(avertissement de Compilation Android.mk $(MAVAR)), cette commande d'écriture de la compilation des infos supplémentaires à l'aide de variables et de texte
Est-ce dans mon Application.mk ou mon Android.mk et ce precendence cette attente ?
OriginalL'auteur vgonisanz
Sequoya est votre ami. C'est une partie de l'Éclipse depuis Indigo.
http://www.eclipse.org/sequoyah/
OriginalL'auteur pinxue
Dans mon cas, j'ai dû donner le chemin complet de mon ndk-build.commande cmd dans eclipse afin de construire:
Eclipse -> Votre Prj -> Clic Droit -> C/C++ Build
C:\Prateek\android-ndk-r9\ndk-build.cmd
Cela déclenche une erreur qui peut avoir à faire avec la barre et la barre oblique inversée: "C:\android-ndk-r10d\build/core/build-local.mk:148: *** Android NDK: l'Abandon . Arrêt". Pas de travail.
OriginalL'auteur user1530779
Juste au cas où vous êtes en quelque sorte seulement de voir votre stdout et pas stderr, essayez de vous rediriger stderr vers stdout.
ndk-build 2>,&1
OriginalL'auteur Phuong Nguyen
assurez-vous d'utiliser cheminabsolu\ndk-build.cmd" au lieu de "cheminabsolu\ndk-build" de windows.
Il se compile sans erreur .cmd ajouté
OriginalL'auteur ksu
En plus de l'environnement système.
Dans Eclipse, Vous avez aussi besoin d'aller dans les préférences->c/c++ Build -> environnement. Ajouter une nouvelle variable avec le nom "NDKROOT" et de la valeur définie pour le NDK chemin d'installation.
Cela fonctionne pour moi.
OriginalL'auteur msjianghu