2009-09-15 4 views
2

J'ai une application RubyCocoa 0.13.2. Cela fonctionne sur 10.5.8 et versions antérieures. Lorsque j'essaie de l'exécuter sur 10.6, il se bloque sur une boucle infinie. 10.6 a intégré 0.13.2, mais ce n'est pas le même binaire que pour 10.5. Quand j'ai essayé de construire le projet Xcode 3.1.3 de mon application avec le framework 0.13.2 à partir de 10.6, il a donné une erreur de lien - objet malformé sur binaire de framework 0.13.2. L'application, qui est construite avec Xcode 3.2 ne fonctionne pas sur leopard, malgré que j'ai construit seulement 32 Arch. configuration. Ma question est de savoir s'il existe un moyen de créer une version qui fonctionnera sur les deux plates-formes?Créer la même version de l'application RubyCocoa pour Leopard et Snow Leopard

Merci,

Nava

EDIT: Je me sens assez fatigué d'essayer de le résoudre et la meilleure chose serait de réécrire tout juste à Cocoa, au moins vous pouvez déboguer d'une manière humaine. Mais je n'ai pas de permission pour ce luxe :)

+0

Remerciez @Alex pour une édition politiquement correcte :)) –

+0

Vous devriez essayer de corriger la boucle infinie sur 10.6 au lieu d'essayer de faire fonctionner une bibliothèque binaire sur une autre version du système d'exploitation (attention à tous les changements de 10.5 à 10.6 - surtout que c'est pur 64bit). – Koraktor

+0

J'ai corrigé la boucle infinie sur 10.6 et ça marche maintenant. Le problème est que la version qui fonctionne sur 10.6 ne fonctionne pas sur 10.5+ et vice versa. C'est ce que je demande ici, comment puis-je faire SAME version pour Leopard & Snow Leopard, car ils utilisent la même version RubyCocoa ... –

Répondre

0

gros binaire peut-être ??

+0

Ce que j'ai essayé jusqu'à présent était de construire pour l'architecture 32bit-Universal uniquement en utilisant GCC 4.2.Vous suggérez de construire 32/64bit-universal? –

-1

Vous devriez probablement avoir les éléments suivants paramètres de construction: -

  • Architectures = 32/64-bit Universal
  • SDK Base = Mac OS X 10.6
  • Déploiement cible = Mac OS X 10.5

Si cela ne fonctionne pas sur 10.5, essayez de changer

  • Base SDK = Mac OS X 10.5

Je ne pense pas que la version de GCC devrait avoir de l'importance, sauf si vous ne pouvez pas construire avec succès.

+0

Merci, va l'essayer! –

+0

Malheureusement, cela n'a pas fonctionné .. Il se bloque immédiatement sur Leopard dans RubyCocoa sur oc_import.rb: 84: Erreur de bus [BUG]. nous utilisons le système ruby, qui est 1.8.6 pour le léopard et 1.8.7 pour le léopard des neiges. Même RubyCocoa 0.13.2 pour les deux. –

+0

Avez-vous essayé de créer une application vraiment simple et d'essayer d'obtenir que cela fonctionne à la fois sur 10.5 et 10.6. Cela aiderait à réduire les choses un peu. –

0

J'ai reçu une notification de la part de RubyCocoa source forge team sur une version 1.0.1 de RubyCocoa qui est supposée fonctionner pour Leopard & Snow Leopard. Va lui donner une chance, surtout qu'il a une solution pour un ver. 1.0.0 crash sur Snow Leopard

0

RESOLU! Tout d'abord, il y a une nouvelle version de RubyCocoa (version 2277, basée sur 1.0.0, bientôt la version), qui a résolu SL crash et fonctionne à la fois pour Leopard & Snow Leopard.

J'ai construit une version RubyCocoa pour les architectures i386 & ppc. Dans le projet, j'ai mis 32bit-universal. Base SDK = 10,5, cible de déploiement = 10,5, compilateur = GCC 4.0.

Maintenant, j'ai une version, que je peux construire sur Leopard & Snow Leopard et il fonctionne sur les plates-formes (il ne dit pas, qu'il n'y a pas des accidents, mais cela est une autre question)