Xcode 6.4 на OSX 10.11 (El Capitan) beta 2/beta 3
Я пытаюсь запустить Xcode 6.4 на El Capitan, и я могу работать с инструкциями на этом сообщении.
Но я ищу способ запустить его без какой-либо внешней программы, как раньше я работал с OSX 10.10 (Yosemite).
Я нашел этот, который указывает на this, но он не работает. Это инструкции
- Открыть этот файл /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Exception.plist
- Найти строки с именем xcode в них (http://i.imgur.com/tcKWLhz.png)
- Изменить значение HardDisabled от YES до NO
-
Сохранение и перезагрузка
1.a) Если вы не можете сохранить, потому что файл говорит, что он заблокирован, включите rootless mode (sudo nvram boot-args = "kext-dev-mode = 1 rootless 0" или sudo nvram boot-args = "kext-dev-mode = 1 rootless = 0" ) и перезагрузитесь.
1.b) Если у вас все еще есть проблема, скопируйте Exceptions.plist на рабочий стол (или где бы то ни было) и отредактируйте их.
1.c) Сохраните его и удалите Исключения .plist в системе (sudo rm -rf /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Exceptions.plist)
1.d) Скопируйте файл с рабочего стола (или где-нибудь еще) на /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources и перезагрузка.
Я не смог отредактировать файл Exceptions.plist с инструкциями выше, но после многих попыток я нашел способ его редактировать.
Здесь вы можете найти инструкции по его редактированию.
После всего этого я все еще получаю сообщение
Вы не можете открыть приложение "XCode.app", потому что оно не поддерживается на этом типе Mac
когда я пытаюсь запустить Xcode 6.4 из Finder
РЕШЕНИЕ 1
Единственное, чего я не делал, это переустановить XCode 6.4 после изменений. Я переустановил его, и он работает!
РЕШЕНИЕ 2
Дэйв Вуд предоставил другое решение, чтобы избежать переустановки XCode. Это - это сообщение, и, как он написал в своем ответе, script здесь
Ответы
Ответ 1
Здесь находится оболочка script, которая изменяет Xcode 6 и уходит в отставку, поэтому вы можете просто запустить ее нормально. Не нужно возиться с списком исключений системы, переустанавливать или что-либо еще. Это займет около минуты.
Script находится здесь: http://bit.ly/Xcode6OnElCapitan
Примечание. Вы не можете отправлять приложения, созданные на El Capitan, пока они еще находятся в бета-версии.
Ответ 2
Xcode 6.4 запускается из коробки:
- El Capitan Beta 4 (сборка 15A226f)
- El Capitan Beta 5 (сборка 15A235d)
- El Capitan Beta 7 (сборка 15A263e)
Xcode 6.4 не открывается:
-
El Capitan Beta 6 (сборка 15A244d) - Временное решение здесь
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib
sudo mv dyld_sim dyld_sim.orig
Ответ 3
В Exceptions.plist есть два места, которые перечисляют Xcode. Тот, который вы не указали, таков:
<key>com.apple.Xcode</key>
<array>
<dict>
<key>AppStoreIdentifier</key>
<string>497799835</string>
<key>AppStoreUpdateIsFree</key>
<true/>
<key>HardDisabled</key>
<false/>
<key>HighVersion</key>
<string>5085.0</string>
</dict>
</array>
После этого необходимо снова установить Xcode.
Ответ 4
В дополнение к первоначальному первому ответу, если вы не хотите повторно устанавливать xcode снова из-за медленного подключения к Интернету, вы можете просто скопировать xcode на рабочий стол, удалить его в папке приложения (предположив, что вы выполнили все необходимые шаги выше, кроме переустановки). И верните xcode в папку приложения (при копировании на рабочий стол, если вы сделали выше шаг вправо, вы заметите, что значок разреза исчезнет после копирования)
Ответ 5
Пользователь lembacon здесь нашел решение:
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform
cd Developer/SDKs/iPhoneSimulator.sdk/usr/lib
sudo mv dyld_sim dyld_sim.orig
Причина в том, что внутренняя реализация _NSGetExecutablePath
обновлено (где ядро), а хост dyld
также был обновлен для отслеживания этого изменение. Тем не менее, dyld_sim
еще не обновлен. Итак проблема в том, что _NSGetExecutablePath
вернет путь, который содержит часть executable_path=
, которая приводит к тому, что CFBundleGetMainBundle()
всегда возвращает NULL
. Это обходное решение просто заставляет симулятор использовать хост dyld
.
Я подтверждаю, что это решение работает с Xcode 6.4.