Похоже, что компоновщик пытается установить связь с системными библиотеками, установленными на вашем Mac. Все эти библиотеки будут скомпилированы для i386 или x86_64, которые не будут работать при компиляции библиотек для iPhone. Вам потребуется перенастроить компоновщик для связи с библиотеками, входящими в iPhone SDK.
Следует также отметить, что вам, вероятно, придется скомпилировать библиотеку дважды - один раз как armv6, а затем как armv7. iPhone 3G и некоторые старые iPod Touches используют архитектуру armv6, в то время как более новые iPhone используют архитектуру armv7. После того как вы скомпилировали библиотеки для обеих архитектур, вы можете использовать lipo (для получения дополнительной информации наберите «man lipo» в вашем терминале), чтобы создать единую статическую библиотеку с обеими архитектурами. Если вы собираетесь разрабатывать свое приложение с использованием симулятора iPhone / iPad, то я также предлагаю один раз скомпилировать его как i386, чтобы вы могли использовать свою библиотеку с симулятором. И снова, lipo может создать единую статическую библиотеку со всеми тремя архитектурами.
Теперь веб-сайт GraphViz в данный момент недоступен, поэтому я не могу загрузить библиотеку и запустить скрипт настройки, как вы, но я подозреваю, что перед запуском «make» вы должны внести следующие изменения в файл make это производится сценарием настройки. В зависимости от того, на какую версию iOS SDK вы нацеливаетесь и какую версию gcc вы используете на своем компьютере, вам может потребоваться настроить некоторые из приведенных ниже изменений, чтобы они соответствовали вашей среде. Ниже приведены инструкции по сборке для armv6. Вам нужно будет изменить настройки для сборки armv7, когда вы будете готовы заняться этой архитектурой.
Найдите CC = cc и измените его на:
CC = /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2
Найдите -arch i386 в CFLAG и измените его на:
-арх армв6
Найдите CFLAG и добавьте в НАЧАЛО !!
-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk
Найдите SHARED_LDFLAGS = -arch i386 -dynamiclib и измените его на:
SHARED_LDFLAGS = -arch armv6 -dynamiclib