2014-02-18 3 views
1

Я продублировал цель и изменил соответствующий файл списка свойств. Добавлен макрос препроцессора, который помогает создать дублированную цель из тех же исходных файлов.Ошибка XCode 4.2 при установке нескольких целей

Но XCode 4.2 продолжает сбой, когда я пытаюсь выполнить чистую сборку. Интересно, что он отлично работает при первоначальной сборке. Но когда я очищаю исходную цель и пытаюсь восстановить дублируемую цель, происходит сбой XCode.

enter image description here

Стек след -

ASSERTION FAILURE in /SourceCache/IDEKit/IDEKit-955/Framework/Classes/Editor/IDEEditorDocument.m:635 
Details: (lastKnownModificationDate) should not be nil. 
Object: <IDEQuickLookDocument: 0x4020b7fc0> 
Method: -_respondToFileChangeOnDiskWithFilePath: 
Thread: <NSThread: 0x40010a260>{name = (null), num = 1} 
Hints: None 
Backtrace: 

    0 0x0000000107035466 -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:messageFormat:arguments:] (in IDEKit) 
    1 0x00000001066a8794 _DVTAssertionFailureHandler (in DVTFoundation) 
    2 0x0000000106fb66c7 -[IDEEditorDocument _respondToFileChangeOnDiskWithFilePath:] (in IDEKit) 
    3 0x00007fff8ca4ca82 _dispatch_call_block_and_release (in libdispatch.dylib) 
    4 0x00007fff8ca4e8f2 _dispatch_main_queue_callback_4CF (in libdispatch.dylib) 
    5 0x00007fff8c2fee7c __CFRunLoopRun (in CoreFoundation) 
    6 0x00007fff8c2fe486 CFRunLoopRunSpecific (in CoreFoundation) 
    7 0x00007fff8f07e2bf RunCurrentEventLoopInMode (in HIToolbox) 
    8 0x00007fff8f08556d ReceiveNextEventCommon (in HIToolbox) 
    9 0x00007fff8f0853fa BlockUntilNextEventMatchingListInMode (in HIToolbox) 
10 0x00007fff869e2779 _DPSNextEvent (in AppKit) 
11 0x00007fff869e207d -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in AppKit) 
12 0x00007fff869de9b9 -[NSApplication run] (in AppKit) 
13 0x00007fff86c5aeac NSApplicationMain (in AppKit) 
14 0x0000000106637eec (in Xcode) 

Кто-нибудь сталкивался вопрос раньше? Благодарю.

ответ

1

Я нашел ответ. Файл проекта был из Xcode 4.1, но я использовал версию 4.2 для его создания. Когда я использовал версию 4.1 для создания проекта, все работало нормально. Интересно, что никаких предупреждений не было, когда я использовал обновленную версию, чтобы открыть файл проекта.

Несколько вещей, которые нужно обратить внимание при дублировании цели -

  1. Изменить имя продукта в настройках скомпонованных тоже. Просто изменение имени целевого файла напрямую не изменится и в настройках Build.

  2. Если вы хотите использовать другой графический интерфейс для новой цели, используйте одно и то же имя в соответствующем файле .plist.

  3. Новый файл графического интерфейса пользователя должен быть включен в комплект поставки.

  4. Макрос препроцессора для флагов компилятора должен быть только для новой цели.

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