2016-04-06 3 views
2

J'essaie de compiler libdispatch for linux sur Android. Cependant, je n'ai trouvé aucune instruction pour Android dans les fichiers de projet.Compilation libDispatch (GCD) pour Android

Je peux voir qu'il y a several StackOverflow questions à propos de l'utilisation de libdispatch, mais l'information est plutôt mince.

Est-ce que quelqu'un a compilé avec succès libdispatch pour Android en utilisant NDK?

+1

Si quelqu'un est d'avoir la même question, voici ce qui a fonctionné pour moi: 'NDK-build NDK_TOOLCHAIN_VERSION = clang NDK_PROJECT_PATH = libdispatch/APP_BUILD_SCRIPT = libdispatch/Android.mk' –

+0

Pour tous ceux qui trouveront cela plus tard, la commande Sam publiée a fonctionné pour moi, mais seulement après avoir cloné aussi github.com/mackyle/blocksruntime github.com/PSPDFKit-labs/libkqueue et github. com/PSPDFKit-labs/libpthread_workqueue dans le même répertoire libdispatch est dans. – milch

Répondre

1

Je n'ai pas personnellement essayé de compiler libdispatch pour Android, mais j'ai construit beaucoup d'autres bibliothèques. Il semble que la construction de libdispatch devrait être assez facile, car il y a déjà un fichier Android.mk dans le dépôt. Vous devriez être en mesure de construire cette bibliothèque avec la commande suivante (split à travers des lignes pour une meilleure lisibilité):

<ndk directory path>/ndk-build \ 
-C <path to libdispatch source directory> \ 
NDK_LIBS_OUT=<path to directory for built libraries> \ 
APP_BUILD_SCRIPT=Android.mk 
+0

J'ai essayé cela plus tôt et il m'a donné l'erreur: 'Android NDK: Impossible de trouver l'application proje ct directory! ' ' Android NDK: Veuillez définir la variable NDK_PROJECT_PATH pour pointer dessus. ' –

+0

Avez-vous passé le chemin d'accès à votre répertoire de projet à ndk-build en utilisant l'argument -C? Certaines personnes utilisent NDK_PROJECT_PATH = au lieu de -C pour passer le chemin du projet, mais je ne l'ai jamais utilisé avec de nouveaux NDK. Quelle version du ndk utilisez-vous? –

+0

J'essaye de compiler et de construire le projet libdispatch extrait de Github. Voici l'erreur que je reçois maintenant: 'NDK-build NDK_PROJECT_PATH =/libdispatch' ' Android NDK:. Vos points de APP_BUILD_SCRIPT à un fichier inconnu:./Libdispatch/JNI/Android.mk' '/ Users/sam /Library/Android/sdk/ndk-bundle/build/core/add-application.mk:195: *** Android NDK: Aborting .... Stop.' Dois-je inclure libdispatch en tant que sous-module? dans un projet Android? Je suis totalement perdu :-( –