# XCode 4 : déploiement projet de type FRAMEWORK



## POUNAS (13 Juillet 2011)

Bonjour à toutes et à tous,

  je n'arrive pas à trouver des informations sur le déploiement d'un FRAMEWORK sous Xcode 4.

lors du build, nous avons bien sous user/library/developer/xcode, le déploiement local (DEV) du framework.

Ce déploiement sert à tester son framework préféré.

ok.

mais lors du déploiement en prod :

1/ Quelle est la procédure pour déployer ce framework (en général sous /library/framework) ?

2/ Quels sont les éventuels fichiers ou interfaces devant être ajoutés au framework, les build phases ou autres build rules nécessaires, ... ? afin de rendre son framework utilisable en mode PROD 

3/ le framework déployé doit-il correspondre à un fichier binaire ? ou bien est-ce une copie de l'arborescence du bundle en mode DEV ?

merci pour votre aide par avance.


----------



## ntx (13 Juillet 2011)

Si ton framework est destiné à une unique application il fait ajouter une phase de copie dans ton build pour que le framework soit copié" dans le bundle de l'application. Les explications ici.


----------



## POUNAS (14 Juillet 2011)

ntx a dit:


> Si ton framework est destiné à une unique application il fait ajouter une phase de copie dans ton build pour que le framework soit copié" dans le bundle de l'application. Les explications ici.



merci pour ta réponse.

mon framework est destiné en fait à 2 applications (l'une sur Os X, l'autre pour iOs).

il est souhaitable qu'il soit totalement autonome.


----------



## ntx (14 Juillet 2011)

POUNAS a dit:


> mon framework est destiné en fait à 2 applications (l'une sur Os X, l'autre pour iOs).


Donc une application pour chaque plate-forme : met le dans le bundle de tes applications.


----------



## POUNAS (16 Juillet 2011)

ntx a dit:


> Donc une application pour chaque plate-forme : met le dans le bundle de tes applications.



merci pour ta réponse.

ok pour les applications qui vont utiliser le framework.

mais en ce qui concerne le framework par lui même, après le build le "product" généré est déposé dans developer/xcode/...product/...

il se compose d'un fichier binaire + fichiers nécessaires au framework.

si je veux le déployer en prod (par ex sur librairies/framewok), dois-je faire quelque chose de particulier au niveau du build (build phases, build rules, interface "publique", ...).

par défaut le build déploie sur l'environnement dev (developer/xcode/..)

merci par avance.

---------- Nouveau message ajouté à 19h59 ---------- Le message précédent a été envoyé à 19h31 ----------




POUNAS a dit:


> merci pour ta réponse.
> 
> ok pour les applications qui vont utiliser le framework.
> 
> ...



si je jette un oeil sur ma TARGET et les build settings :

partie "deployment" : 
     ** installation directory "Library/Framework"
     ** debug no
     ** release yes

je build et quand je regarde dans  Library/Framework, mon framework ne s'y trouve pas !

est-ce normal ?

il déploie uniquement sur mon environnement de "DEV" (developper/xcode..../product)


----------



## ntx (16 Juillet 2011)

Voir message #2


----------



## POUNAS (17 Juillet 2011)

ntx a dit:


> Voir message #2



merci pour ta réponse.

j'ai 2 schémas pour mon framework (1 debug et 1 release).

ce que je souhaite est simple : copier mon build release dans /librairies/framework afin que tous les utilisateurs puissent en profiter et pas uniquement moi.

nous sommes bien dans le cas d'un framework totalement autonome (qui sera ultérieurement linké avec d'autres projets).

est-il possible lors du build d'insérer une phase de copie de /developer/xcode/product/release vers 
/librairie/framework ?

si oui, quelle est la nature de cette phase de copie : un script post-build ? ou autre ?

est-ce la bonne pratique ? ou doit-on plutôt intégrer cette copie dans l'installer ?

merci.


----------



## ntx (17 Juillet 2011)

POUNAS a dit:


> est-il possible lors du build d'insérer une phase de copie de /developer/xcode/product/release vers
> /librairie/framework ?


Jamais fait, je les copie toujours à la main. :rateau:
Il n'y a pas que la copie à prendre en compte mais aussi mettre les bons droits sur le framework dans son répertoire d'arrivée.


----------



## POUNAS (18 Juillet 2011)

ntx a dit:


> Jamais fait, je les copie toujours à la main. :rateau:
> Il n'y a pas que la copie à prendre en compte mais aussi mettre les bons droits sur le framework dans son répertoire d'arrivée.



ok.

peux tu stp préciser ce que tu entends par "bon droits sur le framework dans son répertoire d'arrivée".

merci.


----------



## ntx (18 Juillet 2011)

Le répertoire /Library/Frameworks appartient à l'admin. Il faut donc que ce que tu y copies appartienne à admin mais que tous les utilisateurs pour y accéder en lecture/éxécution.


```
drwxrwx[B][COLOR="DarkGreen"]r-x[/COLOR][/B]  8 [B][COLOR="DarkGreen"]root  admin[/COLOR][/B]  272  5 fév 17:58 SQLite3.framework
```


----------



## POUNAS (20 Juillet 2011)

ntx a dit:


> Le répertoire /Library/Frameworks appartient à l'admin. Il faut donc que ce que tu y copies appartienne à admin mais que tous les utilisateurs pour y accéder en lecture/éxécution.
> 
> 
> ```
> ...



merci pour ton aide. 

J'ai une meilleure visibilité en ce qui concerne la gestion d'un framework.


----------

