Question

J'ai un problème avec la construction de la pile UPnP Platinum avec Android NDK sur MacOSX 10.6.5.

Je l'ai téléchargé la dernière version d'Android NDK pour Mac , installés SCons (pour la construction) et téléchargé la dernière version de leur site Web Platinum forme.

Que je configurer le ANDROID_NDK_HOME à mon NDK répertoire racine et a essayé de construire:
scons -Q target = bras-android-linux et je suis l'erreur suivante:

  

(...)   Exception: ANDROID NDK pas configurée, host-setup.sh pour le configurer:   (...)

Le problème est que ce fichier se est retiré de l'Android NDK selon la documentation:

  

Les versions précédentes, vous deviez exécuter le « build / host-setup.sh » script   configurer le NDK. Cependant, cette étape a été supprimée dans la version 4.

Et maintenant, je suis un peu coincé et ne sais pas comment résoudre ce problème.

Mise à jour:

Je l'ai téléchargé le NDK r3 (la dernière avec le fichier manquant) et configuré avec host-setup.sh

Mais quand j'essaie de construire la cible, il court pendant un certain temps puis se bloque sur:

Build/Targets/arm-android-linux/Debug/Source/Tests/FileMediaServer/FileMediaServerTest.o: In function `main':
/Users/darkh/Platinum-SRC-0-6-3_683/Platinum/Source/Tests/FileMediaServer/FileMediaServerTest.cpp:153: warning: warning: gets() is very unsafe; consider using fgets()

Build/Targets/arm-android-linux/Debug/libPltMediaServer.a(PltMediaItem.o): In function `PLT_MediaItem::DynamicCast(void const*)':
PltMediaItem.cpp:(.text._ZN13PLT_MediaItem11DynamicCastEPKv[PLT_MediaItem::DynamicCast(void const*)]+0x5c): undefined reference to `PLT_MediaItem::_class_PLT_MediaItem'

Build/Targets/arm-android-linux/Debug/libPltMediaServer.a(PltMediaItem.o): In function `PLT_MediaContainer::DynamicCast(void const*)':
PltMediaItem.cpp:(.text._ZN18PLT_MediaContainer11DynamicCastEPKv[PLT_MediaContainer::DynamicCast(void const*)]+0x5c): undefined reference to `PLT_MediaContainer::_class_PLT_MediaContainer'
collect2: ld returned 1 exit status

scons: *** [Build/Targets/arm-android-linux/Debug/FileMediaServerTest] Error 1
Était-ce utile?

La solution

En dehors de la question host-setup.sh, il semble que Platinum utilise son propre système de construction basé de SCons qui repose sur la trajectoire du bras-eabi-4.4.0 contenant compilateur. Cela a changé dans le dernier Android NDK aussi.

Vous devrez soit à pirater le système de construction vous-même ou attendre les mettre à jour pour r5. Un bon endroit pour commencer la recherche serait le fichier Build/Targets/arm-android-linux/Config.scons, mais il y a quelques changements non évidents que vous auriez à faire pour l'obtenir et en cours d'exécution.

EDIT:

Essayez avec R4b. Créez un fichier dans android-ndk-r4b/out/host/config.mk dont le contenu est:

HOST_TAG := linux-x86

.. ou l'équivalent sur Mac - quel que soit le répertoire dans android-ndk-r4b/build/prebuilt/ est appelé. Cela devrait compiler le lot -. Il a fait ici

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top