Ошибка компиляции в проекте CorePlot-CocaTouch

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

hg clone https://core-plot.googlecode.com/hg/ core-plot

Я открыл «основной сюжет/каркас». Затем я дважды щелкнул CorePlot-CocoaTouch.xcodeproj, чтобы запустить Xcode. Когда я создаю проект, я получаю следующую ошибку:

-(void)bind:(NSString *)binding toObject:(id)observable withKeyPath:(NSString *)keyPath options:(NSDictionary *)options
{
#if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE
    [NSException raise:CPException format:BindingsNotSupportedString];
                                          Format not a string literal and no formal arguments
#else
    [super bind:binding toObject:observable withKeyPath:keyPath options:options];
#endif
}

Я работаю на новом MacBook с OS 10.6 и IPhone Simulator 4.0. Любая помощь будет оценена.

Чарльз


person CBrauer    schedule 06.05.2010    source источник


Ответы (2)


Более подходящим местом, чтобы задать этот вопрос, будет список рассылки Core Plot, потому что я один из немногих разработчиков проекта, который регулярно сюда заходит.

Тем не менее, проблема здесь в том, что мы используем строковую константу для строки формата, о которой Xcode теперь, кажется, предупреждает (и это правильно, поскольку это может привести к проблемам). Чтобы обойти это на данный момент, вы можете заменить строку в CPLayer.m

static NSString * const BindingsNotSupportedString = @"Bindings are not supported on the iPhone in Core Plot";

с участием

#define BindingsNotSupportedString @"Bindings are not supported on the iPhone in Core Plot"
person Brad Larson    schedule 07.05.2010
comment
Насколько я могу судить, это до сих пор не исправлено в последней версии основного сюжета. - person Ben Collins; 24.06.2010
comment
@Ben Collins - Обновите свою локальную копию. Это было исправлено 8 июня. Я только что попробовал это с iPhone 4 GM, и он больше не выдает это предупреждение при компиляции. - person Brad Larson; 25.06.2010
comment
да, спасибо. Что произошло, так это то, что я сделал mercurial pull, и слияние оставило без обновлений. Не знаю почему, но я сделал новый клон, и все было в порядке. Я меркантильный новичок, поэтому, возможно, я пропустил что-то очевидное. - person Ben Collins; 25.06.2010

Найдите в своем проекте BindingsNotSupportedString, похоже, что его нет в текущем файле, и поэтому его необходимо включить. Или просто попробуйте изменить это на приемлемый формат.

person bddckr    schedule 06.05.2010