2010-11-20 19 views
214

У меня проблемы с настройкой/отображением моих выходных файлов в Xcode4 (бета 5). Они размещены где-то в ~/Library/Developer/ugly_path/.... Я даже не могу выбрать «show in finder» на моих продуктах. Это то же самое для простого проекта C, инструмента Foundation и даже пакета Cocoa. Отладка работает нормально.Xcode 4 - сборка выходного каталога

Не могли бы вы указать, где и как настроить/создать выходные каталоги? (Я знаю, это звучит глупо, я кодировал в Xcode3 в течение нескольких месяцев, но я не могу понять это в бета-версии Xcode4).

Большое спасибо.

ответ

341

Из меню Xcode сверху выберите настройки, перейдите на вкладку «Месторасположения» и посмотрите на вариант местоположения сборки.

У вас есть 2 варианта:

  1. Место создания продуктов в производном местоположении данных (рекомендуется)
  2. Место сборки продуктов в местах, указанных целей

Update: На Xcode 4.6.2 вам нужно щелкнуть расширенную кнопку с правой стороны под текстовым полем полученных данных. Местоположение сборки выбирает наследие.

+27

Этот ответ объясняет, почему это изменение было сделано: http://stackoverflow.com/questions/5331270/why-doesnt-xcode-4-create-any-products – toofah

+0

У Xcode 5 больше нет этих настроек. –

+3

Гордый член, что вы имеете в виду, это не в Xcode 5? Они находятся в разделе «Настройки» -> «Местоположения» -> «Производные данные» -> «Дополнительно». –

8

Вы всегда можете найти каталог сборки, просмотрев окно просмотра журнала сборки и скопировав туда путь в окно терминала.

Я использую это для анализа моих пакетов iapp .app перед тем, как они будут установлены, чтобы убедиться, что в него не включены никакие случайные файлы.

+0

Настолько убедительный Apple. Не! – zaph

+0

', глядя в окно просмотра журнала сборки - отличная точка! –

+0

И где я могу найти этот журнал построения? Поиск «журнала построения» в Xcode help возвращает 0 результатов. – devios1

13

Если у вас установлено значение «Место сборки Xcode 4», которое установлено в «Разместить сборку продукции в исходном местоположении данных (рекомендуется), оно должно быть расположено в ~/Library/Developer/Xcode/DerivedData. В этом каталоге будет свой проект каталог, название проекта будет добавляться с кучей сгенерированных писем так внимательно

1

вы можете настроить выходной каталог, используя переменную CONFIGURATION_BUILD_DIR среды

Источник:.. http://developer.apple.com/library/mac/#documentation/DeveloperTools/Reference/XcodeBuildSettingRef/0-Introduction/introduction.html#//apple_ref/doc/uid/TP40003931-CH1-SW1

+0

нет, что не связано с местоположением местоположения/наследия (для каждой цели) –

+0

Да, это так. Он работает в любом случае. Из документации: «Путь к каталогу. Идентифицирует каталог, в котором размещаются все файлы, связанные с сборкой для конфигурации активной сборки». –

+0

nope. а не с xcode4, это зависит от настроек 'Xcode> Preferences> Locations> Derived data', как объясняется в большинстве голосовавших ответов. + документ, на который вы ссылаетесь, в последний раз обновлялся в 2010 году –

140

Если строить из командной строки, вы можете установить выход напрямую ory следующим образом:

xcodebuild -workspace 'WORKSPACE_NAME.xcworkspace' \ 
      -scheme 'SCHEME_NAME' \ 
      -configuration 'Release' \ 
      -sdk iphoneos7.0 CONFIGURATION_BUILD_DIR='OUTPUT_DIRECTORY' 
+0

Чтобы мои сценарии работали, мне нужно было удалить одинарные кавычки и написать только CONFIGURATION_BUILD_DIR =/Users/... –

+0

@occulus, вы абсолютно правы, так как это не удастся построить целевую аудиторию после создания проекта, я думаю, что если вы просто строите его, все будет хорошо, но лучше использовать абсолютные пути! –

+0

В случае, если кто-то еще пытается решить подобную проблему, я убедил XCode 6.x разместить привязанный двоичный код * точно *, где это было необходимо, используя эту комбинацию: '' '/ Users/moi/src/mozbuilds/xul3604/$ (КОНФИГУРАЦИЯ)/dist/bin''' –

-1

Это было так обидно. Откройте проект, нажмите «Настроить», «Открыть вкладку« Построить фазы ». Проверьте свои копии ресурсов для красных элементов.

10

Храните производные данные, но используйте DSTROOT для указания места назначения.

Используйте DEPLOYMENT_LOCATION для принудительного развертывания.

Используйте недокументированный DWARF_DSYM_FOLDER_PATH, чтобы скопировать dSYM тоже.

Это позволяет использовать производное местоположение данных из xcodebuild и не нужно делать дурацкие вещи, чтобы найти приложение.

xcodebuild -sdk "iphoneos" -workspace Foo.xcworkspace -scheme Foo -configuration "Debug" DEPLOYMENT_LOCATION=YES DSTROOT=tmp DWARF_DSYM_FOLDER_PATH=tmp build 
2

Если вы используете новый Xcode4 Workspaces, вы можете изменить производный данных Расположение под Файл ->Параметры рабочего пространства ...

29

В Xcode 5: Xcode Меню>Предпочтения ... item>Места проведения занятий вкладки>Местоположение суб-вкладка>Продвинутый ... кнопка>изготовленный под заказ опция.

Затем выберите, например, Относительно рабочей области.

+8

Можете ли вы жить столетним, сильным и здоровым сэром. *Спасибо*! – WhozCraig

3

Для тех, кто хочет найти каталог сборки из сценария, но не хочет, чтобы изменить его, выполните следующие действия, чтобы получить список всех параметров сборки, которые указывают на папку в DerivedData:

xcodebuild -showBuildSettings | grep DerivedData 

Если запускать пользовательские задачи и схемы, пожалуйста, поставить их там, а также:

xcodebuild -workspace "Foo.xcworkspace" -scheme "Bar" -sdk iphonesimulator -configuration Debug -showBuildSettings | grep DerivedData 

Посмотрите на выходе, чтобы найти выход настройки, который вы хотите, и затем:

xcodebuild -showBuildSettings | grep SYMROOT | cut -d "=" -f 2 - | sed 's/^ *//' 

Последняя часть разрезает строку на знаке равенства и затем обрезает пробел в начале.

0

Еще одна вещь, чтобы проверить, прежде чем начать играть с Xcode предпочтений:

Выберите вашу цель и идти к Строительства Настройки> Упаковка> Упаковочный Extension

Значение должно быть: приложение

Если вы не дважды щелкните его и введите «приложение» без qoutes.

Смежные вопросы