Problèmes de compilation

muqaddarmuqaddar Administrateur
11:44 modifié dans Xcode et Developer Tools #1
Salut,

Je suis sous panther, je compile sans erreur. Mon appli tourne sans pb chez moi.
Hélas, sur les autres macs, elle ne marche pas. En double-cliquant, elle ne se lance pas.

Si je donne la source à un autre mac, et qu'il compile, elle marche chez lui, mais plus chez moi...

C'ets quoi, une erreur de lien vers des librairies ???

Réponses

  • mpergandmpergand Membre
    11:44 modifié #2
    Lance l'appli console et regarde s'il n'y a pas des messages d'erreur
  • muqaddarmuqaddar Administrateur
    11:44 modifié #3
    Rien à signaler chez moi !

    L'appli est là : http://www.objective-cocoa.org/applis/CountWordsAndLastWord.zip
  • mpergandmpergand Membre
    mai 2004 modifié #4
    dans 1084374357:

    Rien à signaler chez moi !

    L'appli est là : http://www.objective-cocoa.org/applis/CountWordsAndLastWord.zip


    Ca donne:

    dyld: /Users/Desktop/CountWordsAndLastWord Folder/CountWordsAndLastWord.app/Contents/MacOS/CountWordsAndLastWord can't open library: /System/Library/PrivateFrameworks/ZeroLink.framework/Versions/A/ZeroLink† (No such file or directory, errno = 2)

    Je crois que pour distribuer ton appli tu doit supprimer l'option ZeroLink !
  • muqaddarmuqaddar Administrateur
    11:44 modifié #5
    C'est pas pour distribuer, mais c'est juste que ce problème m'intriguait. :-)

    Et ça se supprime où "zerolink" ?
  • mpergandmpergand Membre
    11:44 modifié #6
    Il faut que tu passes en build Deployment, dans ProjectBuilder c'était simple, mais dans Xcode c'est un peu plus dur, regarde par là: http://www.cocoadev.com/index.pl?StrangeProblemWithBuildProducts
  • Eddy58Eddy58 Membre
    11:44 modifié #7
    dans 1084348690:

    Salut,

    Je suis sous panther, je compile sans erreur. Mon appli tourne sans pb chez moi.
    Hélas, sur les autres macs, elle ne marche pas. En double-cliquant, elle ne se lance pas.

    Si je donne la source à un autre mac, et qu'il compile, elle marche chez lui, mais plus chez moi...

    C'ets quoi, une erreur de lien vers des librairies ???


    Je rencontre également ce problème gênant, je me demande d'où ca vient. Une option "Zero Link" est disponible dans Target, onglet Build, puis Customized settings ou Linking. Le commentaire suivant est mis à propos de Zero Link :

    "Activating this setting indicates that binaries should be linked with Zero Link linking whenever possible. This setting is enabled by default in the Development build style (accessible from the Styles tab of the project inspector) and should be enabled or disabled there. Note: Zero Link linking is not to be used for release or deployment builds."

    Faut-il cocher le bouton switch Zero Link pour régler le problème ?
  • muqaddarmuqaddar Administrateur
    11:44 modifié #8
    Je vais regarder tout ça chez moi. :-)
    Merci mprgrand et eddy58.
  • Eddy58Eddy58 Membre
    11:44 modifié #9
    dans 1084394454:

    C'est pas pour distribuer, mais c'est juste que ce problème m'intriguait. :-)

    Et ça se supprime où "zerolink" ?


    Je ne sais pas encore si ca résoud le problème, mais pour désactiver le Zero Link, il faut sélectionner l'icône du fichier projet en tête de liste dans "Groups & Files", puis demander les infos dessus. Ensuite il faut sélectionner l'onglet "Styles", puis se mettre en mode "Development". Se mettre en "Customized settings", puis désactiver l'option "Zero Link".
  • muqaddarmuqaddar Administrateur
    mai 2004 modifié #10
    Bon j'ai décoché zero link : il suffit que quelqu'un me dise si ça marche sur son mac :)
    L'application est ici.

    Par contre si on va dans General - > deployment, là il y a plein d'options à cocher : deployment Location , post processing, skip install... Peut-être quelque chose à cocher ici aussi.
  • mpergandmpergand Membre
    11:44 modifié #11
    Ca marche !!

    Cette histoire de build deployement est un vrai piège, cause de nombreux messages sur les forum dev Apple, if faut dire que† la solution n'est pas vraiment évidente, Xcode étant encore plus usine à gaz que ProjectBuilder ;D
  • muqaddarmuqaddar Administrateur
    11:44 modifié #12
    C'est s?r.
    Il fallait le savoir.

    Mais j'ai pas bien compris l'intérêt de cocher cette case en fait.
    Si on nous vole l'appli, personne ne pourra la faire tourner, c'ets ça l'intérêt ?  ???
  • mpergandmpergand Membre
    11:44 modifié #13
    dans 1084439249:

    C'est s?r.
    Il fallait le savoir.

    Mais j'ai pas bien compris l'intérêt de cocher cette case en fait.
    Si on nous vole l'appli, personne ne pourra la faire tourner, c'ets ça l'intérêt ?† ???


    Pas vraiment, l'option zeroLink supprime l'édition de liens, voir: ZeroLink
  • muqaddarmuqaddar Administrateur
    11:44 modifié #14
    Super.
    Merci mprgand.
  • mpergandmpergand Membre
    11:44 modifié #15
    Bon, y a comme même un moyen plus simple de changer le type de build:† faire ctrl-clic sur la barre d'outils du projet, choisir customize toolbar et ajouter le bouton Active Build Style† :)
  • muqaddarmuqaddar Administrateur
    11:44 modifié #16
    Ok, merci pour l'astuce.
  • MalaMala Membre, Modérateur
    11:44 modifié #17
    Histoire d'apporter ma pierre à l'édifice, l'option ZeroLink permet simplement de gagner du temps pour le debug lors des compilations sous xCode.

    Plutôt que de désactiver cette option du ´ build style ª ´ development ª, il est préférable de prendre l'habitude de recompiler l'application avec le style ´ deployment ª avant de livrer une application à quelqu'un. Le mode ´ deployment ª permet en effet d'activer les optimisations de compilation pour la vitesse et supprime les infos de debug en plus de désactiver le ZeroLink. L'application n'en sera alors que plus véloce.

    En fait, c'est un peu comme de basculer entre mode "release" et "debug" sous d'autres outils de dev.
  • 11:44 modifié #18
    dans 1084439249:

    C'est s?r.
    Il fallait le savoir.

    Mais j'ai pas bien compris l'intérêt de cocher cette case en fait.
    Si on nous vole l'appli, personne ne pourra la faire tourner, c'ets ça l'intérêt ?† ???


    Activer l'option zerolink permet de compiler beaucoup plus rapidement. L'idée générale étant d'avoir deux modes de compilation, un rapide pour les tests (development build style) et un plus lent pour la diffusion de l'appli lors d'une release (deployment build style).
Connectez-vous ou Inscrivez-vous pour répondre.