Использование libtidy для приложения iPhone - PullRequest
1 голос
/ 19 марта 2009

Я пытаюсь использовать libtidy для приложения для iPhone (поскольку SDK для iPhone 2.2 не содержит NSXMLDocument, который имеет удобную функциональность), но я получаю ошибку компоновщика, говорящую «библиотека не найдена для -ltidy» при сборке приложения .

Что касается других ссылок на фреймворки / библиотеки, я добавил libtidy.dylib в свой список ссылочных фреймворков и добавил связанные заголовочные файлы libtidy к пути, указанному в настройке сборки Header Search Paths. Xcode, кажется, автоматически добавляет опцию компоновщика -ltidy при сборке приложения, но все равно жалуется, что не может найти связанный файл libtidy.dylib, даже если я вижу его в файловой системе по указанному пути и в списке в платформе ссылки.

У кого-нибудь еще была подобная проблема при добавлении ссылки на libtidy в Xcode? Я использую Xcode 3.1.2 с iPhone SDK 2.2.1.

1 Ответ

2 голосов
/ 29 июня 2009

Это довольно большой недосмотр, но единственный способ решить эту проблему - вручную скопировать эти два файла:

/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libtidy.dylib
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libtidy.A.dylib

... в разные каталоги симулятора:

/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.0.sdk/usr/lib/
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.1.sdk/usr/lib/
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.sdk/usr/lib/
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.1.sdk/usr/lib/

Не уверен, почему их там не было. Вы можете сделать это из терминала:

for directory in $( echo /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator*.sdk/usr/lib/ ); do
  sudo cp /Developer/SDKs/MacOSX10.5.sdk/usr/lib/libtidy.* $directory
done;
...