Подтвердить что ты не робот

Xcode 6 pch.file не найден

Я загружаю свой проект из xcode 5 в xcode 6 и вижу ошибку myProject-prefix.pch не найден в myProjectTests, я добавляю этот файл и вижу новую ошибку

Ld /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator/Мобильный\ Extreme\ FitnessTests.xctest/Мобильный\ Extreme\ FitnessTests normal x86_64
cd /Users/willrock/Desktop/ExtremeFitness
export IPHONEOS_DEPLOYMENT_TARGET=7.1
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.0.sdk -L/Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator -F/Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.0.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.0.sdk/Developer/Library/Frameworks -filelist /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Intermediates/Мобильный\ Extreme\ Fitness.build/Debug-iphonesimulator/Мобильный\ Extreme\ FitnessTests.build/Objects-normal/x86_64/Мобильный\ Extreme\ FitnessTests.LinkFileList -bundle_loader /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator/extreme_fitness.app/extreme_fitness -Xlinker -objc_abi_version -Xlinker 2 -framework XCTest -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=7.1 -framework XCTest -framework UIKit -framework Foundation -Xlinker -dependency_info -Xlinker /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Intermediates/Мобильный\ Extreme\ Fitness.build/Debug-iphonesimulator/Мобильный\ Extreme\ FitnessTests.build/Objects-normal/x86_64/Мобильный\ Extreme\ FitnessTests_dependency_info.dat -o /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator/Мобильный\ Extreme\ FitnessTests.xctest/Мобильный\ Extreme\ FitnessTests

л d: file not found: /Users/willrock/Library/Developer/Xcode/DerivedData/Мобильный_Extreme_Fitness-cdfxpafcwvsczkfjvlwznradvmhm/Build/Products/Debug-iphonesimulator/extreme_fitness.app/extreme_fitness clang: error: linker command failed with exit code 1 (use -v to see invocation)

если я загружаю проект в xctest

clang: error: no such file or directory: '/Users/willrock/Desktop/ExtremeFitness/extreme_fitness/extreme_fitness-Prefix.pch' clang: error: no input files Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1

но в xcode 5 работает нормально

4b9b3361

Ответ 1

я решил это - в целям удалять xctest target и скомпилировать

Ответ 2

  • Создать новый файл: ⌘cmd + N
  • iOS/Mac > Другое > Файл PCH > YourProject-Prefix.pch.
  • Убедитесь, что вы отобразите "Все", а не "Основные". (Синие кнопки)
  • Проект > Настройки сборки > Поиск: "Заголовок префикса".
  • В разделе "Apple LLVM 7.0" вы получите ключ заголовка префикса.
  • Введите каталог файлов. например: "$ (SRCROOT)/$(PROJECT_NAME)/ProjectName-Prefix.pch".
  • Чистый проект: ⌘cmd + ⇧shift + K
  • Проект сборки: ⌘cmd + B

Изображение заголовка префикса

Ответ 3

Попробуйте это с помощью Xcode 6. Вам нужно вручную создать файл PCH.

Файл → Создать → Файл → iOS → C и С++ → Файл PCH.

Добавить новый проект PCH в проект - Новый файл > Другое > PCH файл

В опции "Настройки сборки" проекта установите значение "Заголовок префикса" в имя вашего PCH файла, с именем проекта в качестве префикса, то есть для проекта с именем "TestProject" и PCH файл с именем "MyPrefixHeaderFile", добавьте значение "TestProject/MyPrefixHeaderFile.pch" на plist.

Ответ 4

Есть много причин для этой проблемы, и у меня были собственные хиты. Мне пришлось сделать два шага для запуска моего проекта. Может быть, это может быть полезно для других.

  • Я удалил запись в заголовке Prefix настроек сборки.

Path- > Target> Build Settings > Prefix Header.

  1. Удалил ваш проект тестов в целевых целях.

    снимок экрана для второй точки.

Ссылка: http://www.buzztouch.com/forum/thread.php?tid=F42D8239A330C321132944A&currentPage=3

Ответ 5

Создайте новый файл pch. Назовите файл как Demo-Prefix.Pch Перейти к объектам - Настройки сборки like the screenshot problem solved exactly

Ответ 6

Выполните следующие действия, изменив [Precompile Prefix Header] на [no] и [Prefix Header] с пустым полем.

И я перестраиваю проект, он проходит и запускается!

[Project]
-[Basic]
-[Apple LLVM6.1-Language]
--[Precompile Prefix Header]-[no]
--[Prefix Header]--[]

Ответ 7

Вот описание того, что вы должны делать

  • Нажмите на первую папку под синей страницей с именем проекта. В папке также есть имя проекта рядом с ним.

  • File > New File > iOS > Other

  • Нажмите PCH File

  • Нажмите Next

  • Сохранить как: PrefixHeader

  • Нажмите первый флажок в Targets ТОЛЬКО; если другие проверяются, снимите отметку с них

  • Нажмите Create

  • Если файл Prefix Header "попал в другую папку, например папку Supporting Files, переместите ее в верхнюю папку, на которую вы нажали, на шаге 1

  • Нажмите на синюю страницу в верхней части левой боковой панели с именем проекта, следующим за ней. Это находится над папкой, на которую вы нажали на шаге 1.

  • Нажмите вкладку Build Settings

  • В строке поиска введите Prefix Header и нажмите клавишу Return/Enter

  • Искать Apple LLVM 6.0 or 7.0 - Language. 6.0 относится к Xcode 6 и 7.0 относится к Xcode 7. Это не имеет значения.

  • Убедитесь, что для параметра Increase Sharing of Precompiled Headers установлено значение No и для Precompile Prefix Header установлено значение No

  • Найдите строку Prefix Header непосредственно под линией Precompile Prefix Header. Переместите курсор на 5 дюймов, но оставайтесь на одной линии. Двойной клик. Откроется окно.

  • Введите имя вашего проекта (это указано рядом с папкой, на которую вы нажали на шаге 1)

    Пример) Prereq для просрочки   ОЧЕНЬ ВАЖНО, что вы вводите капиталы там, где это необходимо, например "P" в "Prereq". Это чувствительно к регистру. Теперь поставьте косую черту (/). Затем введите имя файла, созданного на шагах 2-7 ( Опять же, это чувствительный к регистру, и вы должны поместить пробелы там, где это необходимо). Я рекомендую оставить файл как PrefixHeader (без пробелов). После имени файла, например PrefixHeader, введите .pch ВСЕ нижний регистр.

  • Конечный результат должен выглядеть примерно так:

    Prereq for Overdue Assignment/PrefixHeader.pch

  • Теперь щелкните меню Product (6 меню из меню файла, на которое вы нажали на шаге 2). Затем нажмите Clean

    Вы можете обойти этот шаг, одновременно удерживая command, shift и K.  Когда вы получите сообщение, Clean Succeeded, перейдите к шагу 18.

  • Нажмите на Product и перейдите к Build. Нажмите Build.

    Вы можете обойти этот шаг, удерживая command и B в то же время. Вы должны получить Build Completed.

Вот оно!

Ответ 8

  • выберите фреймворк в файловом навигаторе
  • откройте панель утилит (Xcode → Вид → Утилиты → Показать инспектор файлов)
  • включить целевое членство в вашей структуре для всех целей.

Ответ 9

Просто измените название своей схемы на то, что вы хотите. Очистите проект, затем скомпилируйте его. Он работает для меня.