Компиляция программы для iPhone с библиотекой libsqlite3 - PullRequest
0 голосов
/ 10 июня 2010

Я разрабатываю приложение для iphone, которое использует sqlite3 в качестве базы данных. В то время моей версией OS X был леопард. Поэтому добавьте добавленный libsqlite3.0.dylib в фреймворки и скомпилируйте без проблем, чтобы он соответствовал, и с любыми проблемами я мог запустить его и на устройстве.

На этой неделе я установил Snow Leopard на свой Mac. Удаление старой версии Leopard и установка новой системы Snow Leopard.

Но теперь моя проблема в том, что я не могу скомпилировать эту программу, потому что она выдаст ошибки с библиотекой sqlite3. Я добавил sqlite3.0.dylib, выбрав цели и выбрав файл. Также попытался добавить выбрав его прямо из /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/usr/lib

Я получаю две разные ошибки при компиляции на устройство и на симулятор

при компиляции на устройство, ld: warning: в /opt/local/lib/libsqlite3.0.dylib файл не имеет требуемой архитектуры *

При компиляции в симулятор, ld: предупреждение: в /opt/local/lib/libsqlite3.0.dylib файл был создан для неподдерживаемого формата файла, который не связан с архитектурой (i386) ld: warning: в /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/usr/lib/libSystem.dylib отсутствует необходимая архитектура i386 в файле ld: в /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/usr/lib/libobjc.A.dylib, отсутствует требуемая архитектура i386 в файле Команда /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 завершилась неудачно с кодом выхода 1

Я также пытался добавить sqlite3.dylib (я думаю, что sqlite3.0.dylib связан с sqlite3.dylib.), Но не повезло.

Может ли кто-нибудь там помочь мне. Я действительно пытаюсь заставить это работать. Пожалуйста, дайте мне, если вы хотите больше деталей.

Спасибо, Waruna

Ответы [ 3 ]

0 голосов
/ 27 января 2011

Может быть немного поздно для первоначального запросчика.Но что для меня работает, так это перейти к поиску и удалить файл (ы) libsqlite.dylib из папки вашего проекта и снова добавить ссылку на структуру.

0 голосов
/ 27 января 2011

Я не понимаю, зачем добавлять библиотеку в комплекте с вашей ОС.Почему бы просто не добавить источники в ваш проект?это даст вам свободу обновлять версию SQLite на ваших собственных условиях и не зависеть от SQLite на вашем компьютере.что произойдет, если пользователь использует более старую версию ОС?вы заставите их обновить свою систему?

0 голосов
/ 10 июня 2010

Вы должны указать ссылку на библиотеку, которая находится в пути SDK.При выборе «Добавить платформу ...» вам будет представлен список платформ, доступных по пути по умолчанию.Не уходите далеко от этого списка, но выберите библиотеку sqlite из списка.

Библиотека, расположенная в / opt / local / lib /, предназначена только для приложений, работающих на вашем компьютере.Не для приложений iPhone.

...