Puis-je avoir plusieurs versions de Xcode installées?

175

Est-il possible d'installer plus d'une version de Xcode en même temps?

Si tel est le cas, veuillez publier des conseils, astuces ou problèmes potentiels à surveiller.

ÉDITER:

La raison pour laquelle je veux installer plusieurs versions est d'essayer la nouvelle version bêta de sdk, mais si le nouveau Xcode est bogué, je veux pouvoir utiliser l'ancienne version pour mes projets existants.

Dana Holt
la source
3
Après avoir installé les deux XCodes, vous disposez d'une icône personnalisée pour XCode4 pour les différencier facilement. Voici une icône personnalisée - qdevarena.blogspot.com/2011/04/xcode-4-custom-icon.html
Rajavanya Subramaniyan
Voici une icône que j'ai faite rapidement pour Xcode Beta 4.2 ...:! entrez la description de l'image ici. Fichier .png --- < dl.dropbox.com/u/7124872/XcodeBeta.png?dl=1 > Fichier .icns --- < dl.dropbox.com/u/7124872/Xcode.icns? dl = 1 > Profitez.
Hubert Kunnemeyer
lien pour toutes les versions de Xcode stackoverflow.com/questions/10335747/…
Honey
Voir ma réponse pour un moyen beaucoup plus simple de faire ce que vous demandez. De plus, si vous pensez que c'est une meilleure façon, pensez à marquer ma réponse comme la solution à votre problème. Je pense certainement que c'est une solution bien supérieure.
cseder

Réponses:

95

Oui, vous pouvez installer plusieurs versions de Xcode. Ils s'installeront dans des répertoires séparés. J'ai constaté que la meilleure pratique consiste à installer d'abord la version fournie avec votre Mac, puis à installer les versions téléchargées, mais cela ne fait probablement pas une grande différence. Consultez http://developer.apple.com/documentation/Xcode/Conceptual/XcodeCoexistence/Contents/Resources/en.lproj/Details/Details.html cette page Apple Developer Connection pour de nombreux détails. <- La page n'existe plus!

MattK
la source
13
Pour clarifier, ils s'installeront dans des répertoires séparés uniquement si vous le spécifiez explicitement au moment de l'installation. En outre, vous souhaiterez généralement désélectionner toutes les fonctionnalités en plus des outils de base xcode, car les autres ne vous permettent pas de modifier le répertoire d'installation.
Paul Du Bois
7
Le lien est obsolète. Peut obtenir d'anciennes versions d' ici , mais il n'y a pas de détails sur la façon de les configurer ou de les installer = (.
GeneralMike
1
Je n'ai pas eu l'occasion d'essayer cela avec un Xcode récent. Je me demande si cela a changé avec l'ajout de Xcode à l'App Store?
MattK
4
Ce lien peut vous aider: iosdevelopertips.com/xcode
King-Wizard
J'ai récemment mis à niveau vers Xcode 7 et j'ai perdu la possibilité de construire et de tester sur iOS 7.1. J'ai téléchargé Xcode 6.4 à partir de developer.apple.com/downloads/index.action (selon les commentaires précédents) et copié Xcode.app dans /Applications/Xcode-6.4, à partir duquel il fonctionne très bien (selon les informations fournies dans iosdevelopertips.com / xcode /… , toujours comme par les commentaires précédents)
Martyn Davis
43

Il est facile d'avoir plusieurs installations Xcode.

Dans le programme d'installation, il y a une liste déroulante pour l'emplacement ... il vous suffit de choisir un nouvel emplacement lorsque vous installez la version bêta.

Ces instructions d'un évangéliste des outils de développement Apple ont tous les détails (nom d'utilisateur / mot de passe Apple dev requis): https://devforums.apple.com/message/40847#40847

Ensuite, saisissez-vous une icône personnalisée pour la version bêta de XCode que vous utilisez, afin de pouvoir les distinguer dans le dock: http://iphonedevelopment.blogspot.com/2009/03/multiple-developer-tool-installs.html

Jim Rhoades
la source
Ce lien peut également vous aider: iosdevelopertips.com/xcode/…
King-Wizard
36

Puis-je avoir plusieurs versions de Xcode installées?

Solution:
En fait, comme le disent la plupart des réponses ci-dessus, c'est possible. Même selon le blog Oracle Mobile Platform suivant , vous pouvez installer plusieurs XCodes sur le même Mac. La raison pour laquelle vous devez le faire peut varier selon vous.

Scénario:
vous n'avez peut-être installé qu'une seule version de XCode pour le moment. Surtout la seule version derrière la dernière version de XCode qui est disponible via l'App Store (le mien j'ai Xcode 6.3.2 et j'avais besoin de le garder et d'installer Xcode 7 qui est disponible via l'App Store).

Pour Ex: -

Vous avez déjà installé XCode 6.x, et l'App Store a déjà XCode 7 fourni par l'App Store. Pour une raison quelconque, vous devez conserver cet ancien XCode 6.x (comme vous le savez, il est stable depuis un certain temps maintenant) et vous devez également installer et essayer le nouveau XCode 7.

La question numéro un pourrait donc être, comment et où pourriez-vous télécharger le fichier DMG installable sous Mac OS X pour XCode 7 (ou peut-être si vous voulez essayer une ancienne version de XCode)? Ok, voici le lien direct de téléchargement Apple (vous devrez peut-être vous connecter au compte Apple Developer avant de visualiser ce lien correctement), ou bien voici un lien Q&A StackOverflow qui donne la réponse à l'endroit où télécharger les fichiers DMG pour les IDE XCode .

Supposons maintenant que vous ayez obtenu l'un des fichiers DMG pour la version XCode dont vous avez besoin pour l'installation secondaire?

Étapes:
Suivez les étapes ci-dessous que j'ai obtenues à partir du premier lien ci-dessus du blog Oracles Mobile Platform.

  1. Fermer Xcode s'il est en cours d'exécution
  2. Renommer /Applications/Xcode.appen/Applications/Xcode_6.x.app
  3. Entrez le mot de passe administrateur lorsque vous y êtes invité
  4. Double-cliquez sur le fichier DMG de votre Xcode pré-téléchargé requis et installez-le
  5. Une fois installé, avant de l'exécuter, modifiez le nouveau /Applications/Xcode.appqui vient d'être installé (selon mon exemple ci-dessus)/Application/Xcode_7.app

Remarque*:

[Veuillez lire patiemment cette section jusqu'à la prochaine Note] Lorsque deux versions de Xcode sont installées, votre poste de travail a également deux versions de Command Line Tool ( xcodebuild) installées. La question est de savoir ce que votre terminal et la commande de construction Xcode utiliseront lorsque vous créerez votre application iOS. Parce qu'avec l'outil de ligne de commande, le SDK iOS qui est utilisé pour créer votre application dépend également de.

Mon expérience est que j'ai eu deux versions de Xcode. Xcode 10 (ancien avec iOS12.0 - iphoneos12.0) et Xcode 10.1 (nouveau avec iOS 12.1 - iphoneos12.1). Donc, évidemment, les paramètres de l'outil de ligne de commande ont été sélectionnés pour utiliser l' xcodebuildoutil de l'ancienne application. J'ai dû le sélectionner manuellement dans la fenêtre de préférence Xcode.

Où définir l'outil de ligne de commande dans la fenêtre des préférences Xcode?

  • Sélectionnez l' Locationsonglet et là, vous pouvez sélectionner toutes les versions installées des outils de ligne de commande (qui est xcodebuild).

Comment déterminer quelle version du SDK iOS est utilisée pour créer votre application iOS?

  • Sur votre problème de terminal, la commande suivante: $> xcodebuild -showsdks
  • La commande ci-dessus doit imprimer tous les détails du SDK que votre configuration Xcode actuelle utilise pour créer vos applications. Et en voyant les résultats, vous comprendrez que votre version du SDK iOS / iphoneos dépend de la modification du xcodebuildparamètre de l' outil de ligne de commande ( ) sur votre Xcode.

Remarque **:
les liens ci-dessus pour les téléchargements Apple et les articles de blog Oracles MPF peuvent changer et / ou ne pas être disponibles à l'avenir.

J'espère donc que ma réponse pourra être utile à quelqu'un d'autre!
À votre santé!

Randika Vishman
la source
@Tinkerbell Bon à savoir! : D Peut-être dans ma machine, je pourrais avoir une configuration conflictuelle. Merci!
Randika Vishman
32

Vous pouvez utiliser la commande "xcode-select" dans le terminal pour basculer entre les différentes versions de Xcode dans les dossiers installés.

Eric Chan
la source
10
Cela m'a aidé sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer/à utiliser la version bêta de xcode par exemple. Merci!
Christian Landgren
Merci ... c'est la meilleure réponse!
Carlos Galeano
13

Il semble que Xcode aime vraiment être dans le dossier Applications et s'appeler Xcode, en particulier lors de l'utilisation xcodebuild(lors de la construction pour Carthage par exemple) - et xcode-selectne semble pas toujours le couper.

J'ai un projet client qui utilise toujours Swift 2.2, et je suis bloqué sur Xcode 7 pour cela et j'utilise Xcode 8 pour autre chose.

Donc, dans mon dossier Applications, j'ai Xcode 7 (renommé Xcode_7 ) et Xcode 8 (renommé Xcode_8 ). Ensuite, je renomme celui dont j'ai besoin pour simplement Xcode , et inversement une fois terminé. C'est un mal de balle, mais semble fonctionner.

Ce script shell le simplifie un peu…

xcode-version.sh

cd /Applications

if  [[ $1 = "-8" ]]
then 
    if [ -e Xcode_8.app ] 
    then            
        mv Xcode.app Xcode_7.app
        mv Xcode_8.app Xcode.app
        echo "Switched to Xcode 8"
    else
        echo "Already using Xcode 8"
    fi
elif  [[ $1 = "-7" ]]
then
    if [ -e Xcode_7.app ] 
    then            
        mv Xcode.app Xcode_8.app
        mv Xcode_7.app Xcode.app
        echo "Switched to Xcode 7"
    else
        echo "Already using Xcode 7"
    fi
else
    echo "usage: xcode-version -7/8"
fi

xcode-select --switch Xcode.app
Ashley Mills
la source
1
Exécuter Xcode 8 et 7 en parallèle vous pose-t-il des problèmes?
nnrales
Je n'ai eu aucun problème, du moment que je me souviens de renommer la version appropriée en Xcode.app à chaque fois.
Ashley Mills le
Merci pour la solution et le script pratique. Au fait, je devais ajouter sudoà la dernière ligne sudo xcode-select --switch Xcode.apppour que la partie de commutation fonctionne.
Isuru
1
L'utilisation à xcodebuildpartir d'une version Xcode spécifique ne nécessite pas de changement à l'échelle du système de la version Xcode par défaut. Réglage de la variable d'environnement DEVELOPER_DIR avant d' utiliser xcodebuildsuffit: export DEVELOPER_DIR="/Applications/Xcode-9.3.app/Contents/Developer".
Rein Spijkerman
12

Notez que si vous utilisez l' xcodebuildoutil de ligne de commande, la dernière version de Xcode installée deviendra la version par défaut. (Un lien symbolique est installé dans / usr / bin.) Pour utiliser le xcodebuildpour les autres versions de Xcode, vous devrez utiliser la version dans le (xcode_install_directory)/usr/binrépertoire.

note Remarque Pour basculer entre les différentes versions des outils de ligne de commande Xcode, utilisez l' xcode-selectoutil mentionné par d'autres commentateurs.

ThomasW
la source
4

En commençant par Xcode 9 , la bêta Xcode est intitulée «Xcode-beta.app» et est conçue pour vivre côte à côte avec la version de production. Des informations peuvent être trouvées dans les notes de version Xcode ici . (Ne pas utiliser de lien direct car il casse souvent).

De Apple:

Xcode 9 beta 4 peut coexister avec les versions précédentes de Xcode. Les versions préliminaires de Xcode sont disponibles sur developer.apple.com, conditionnées dans un fichier XIP compressé. Pour installer Xcode pendant la période bêta, téléchargez le fichier XIP, double-cliquez sur le fichier pour le développer en place, puis faites glisser Xcode-beta.app vers le dossier Applications

bauerMusique
la source
Un mot d'avertissement: tous mes simulateurs Xcode 8 sont partis et je ne peux pas en ajouter de nouveaux. C'est tout Xcode 9 à partir de maintenant pour moi (ou en supprimant péniblement tout ce que Xcode 9 a gâché lors de son installation). YMMV.
Sebastian le
@Sebastian Je pense que les miens sont ok (en utilisant Xcode 8, mais en avait 9 avant). J'ai toujours la possibilité (Xcode> Fenêtre> Périphériques) pour ajouter d'autres simulateurs. Cela pourrait valoir la peine d'ouvrir un nouveau sujet si nous pouvons le vérifier. Pouvez-vous ajouter des simulateurs plus anciens?
bauerMusic
un autre de mes amis a confirmé que cela travaillait aussi pour lui. Donc, probablement, quelque chose est foiré sur mon système. Donc je suppose que c'est juste un conte "les choses pourraient mal tourner si vous changez quelque chose" ;-) (et ils le feront si vous ne le faites pas)
Sebastian
@Sebastian Pouvez-vous les rajouter à partir de «Appareils»?
bauerMusic
Hier, je ne pouvais pas ("[...] Je ne peux pas en ajouter de nouveaux"), le bouton "Créer" de la boîte de dialogue "Ajouter un simulateur" n'a rien fait. Cependant, je viens de rouvrir mon Xcode 8 déjà abandonné et il y avait tous les simulateurs que j'ai essayé de créer hier, tous fonctionnant. Je peux également en ajouter de nouveaux. @bauerMusic, merci de m'avoir poussé à revérifier.
Sebastian
2

Pour avoir plusieurs instances Xcode installées, vous pouvez les placer dans différents dossiers, par exemple /Developer5.0.2/Xcode, mais pour les utiliser dans CI ou environnement de construction (ligne de commande), vous devez configurer certaines variables d'environnement pendant la construction. Vous pouvez avoir plus d'instructions ici . Donc, cela ne fonctionne pas seulement avec la version bêta et la nouvelle version, mais aussi pour les versions vraiment anciennes, vous pourriez en avoir besoin pour l'utiliser avec les plugins Marmalade ou Unity qui ne prennent pas encore en charge les dernières versions de Xcode (cela arrive parfois).

fleurdeviande
la source
2

Installer plusieurs versions de Xcode à l'aide de Xcode-Install Ruby Gem

Vous pouvez faire tout ce processus beaucoup plus facilement si vous utilisez le Xcode-install RubyGem .

Si vous avez déjà une installation fonctionnelle de Xcode CommandLineTools et Ruby (je suggère d'utiliser Homebrew pour installer Ruby) mais je pense que cela fonctionne également avec le Ruby fourni par macOS si vous installez le Gem en utilisant sudo ou en tant qu'installation utilisateur . (Détails sur la page GitHub) En gros:

    $ gem install xcode-install
    $ xcversion list
    6.0.1
    6.1
    6.1.1
    6.2 (installed)
    6.3
    $ xcversion install 8
    ######################################################################## 100.0%
    Please authenticate for Xcode installation...

    Xcode 8
    Build version 6D570

Pour sélectionner une version comme active, vous exécuterez:
$ xcversion select 8

Pour sélectionner une version comme active et modifier le lien symbolique dans / Applications / Xcode, vous exécuterez:
$ xcversion select 8 --symlink

xcode-install peut également gérer vos simulateurs locaux à l'aide de la commande simulators.

Lisez les instructions sur la page Projet GitHub pour plus d'informations.

cseder
la source
0
  1. Tout d'abord, supprimez l'installation actuelle de Xcode de votre machine. Vous pouvez probablement sauter cette étape mais je voulais repartir à zéro. De plus - Xcode se comportait un peu bizarrement ces derniers temps, c'est donc une bonne occasion de le faire.
  2. Installez Xcode 8 depuis l'App Store. Assurez-vous que les fichiers de projet ( .xcodeproj) et les fichiers d'espace de travail ( .xcworkspace) peuvent être ouverts avec la nouvelle installation de Xcode (n'oubliez pas de sélectionner l'option Plus tard chaque fois que vous y êtes invité).
  3. Téléchargez le fichier dmg Xcode 7.3.1 d'Apple. Appuyez deux fois sur le fichier dmg nouvellement téléchargé afin d'obtenir le standard «Faites glisser pour installer Xcode dans votre dossier Applications». Ne fais pas ça. Au lieu de cela, faites glisser l'icône Xcode sur le bureau. Changez le nom du fichier en Xcode 7.3.1. Faites-le maintenant glisser dans le dossier Applications.

Vous avez maintenant deux versions de Xcode installées sur votre machine. Xcode 7.3.1 et Xcode 8.

Détails: Installez Xcode 7 et Xcode 8 côte à côte

Katwal-Dipak
la source
0

Quel que soit le chemin de conseil que vous empruntez, faites une copie de votre dossier de projet et renommez le plus externe pour refléter la version XCode dans laquelle il est ouvert. tout ce bovver est votre storyboard sera modifié simplement en regardant. Il peut être résolu au moment où un nouveau lecteur rencontrera ce problème dans le futur, ou

aremvee
la source
0

Toutes les mises à jour de la nouvelle version de xcode seront disponibles dans l'Appstore si vous avez installé la version depuis l'Appstore. Si vous collez simplement la version téléchargée, l'Appstore affichera l'installation et non la mise à jour. Conservez donc la version stable téléchargée depuis l'Appstore dans votre dossier d'applications.

Pour essayer de nouvelles versions bêta, je le mets généralement dans un lecteur séparé, je le décompresse et je l'installe. Cela évitera toute confusion lorsque vous travaillez sur une version stable.

Pour éviter toute confusion, vous ne pouvez conserver que la version stable dans votre dock et ouvrir la version bêta à partir de Spotlight (Commande + Espace). Cela placera temporairement la version bêta sur le quai. Mais cela garantira que vous ne modifiez pas accidentellement votre projet client en version bêta.

Le plus important: - Travailler sur le même projet sur deux xcode différents peut créer des résultats indésirables. Comme s'il y avait un bogue dans le constructeur d'interface qui a été introduit dans certaines versions de xcode. Ce qui a brisé les contraintes. Il a été corrigé à nouveau dans le suivant.

Gardez une trace des notes de version pour savoir exactement quelles sont les fonctionnalités supplémentaires et quels sont les problèmes connus.

Ashish Pisey
la source