Как использовать «SQLite» (оболочку на github) в инструменте командной строки?

Я успешно использую отличную оболочку Swift для sqlite из https://github.com/stephencelis/SQLite.swift в приложении Cocoa.

Но когда я пытаюсь использовать оболочку в проекте инструмента командной строки и выполняю те же подробные шаги установки, я получаю следующую ошибку:

Проверить зависимости

Невозможно выполнить команду «PBXCp SQLite.framework» — эта цель может включать собственный продукт.

Я проверил зависимости, но не мог понять, как это решить.


person Klaas    schedule 28.10.2014    source источник


Ответы (1)


Вы не можете связать динамическую структуру (.framework) с вашим приложением в проекте инструмента командной строки. Причина проста — цель инструмента командной строки создает один двоичный файл. Это не похоже на обычное приложение Cocoa, где «файл» .app на самом деле является папкой, содержащей .framework и другие вещи внутри.

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

Таким образом, единственное, что вы можете сделать — насколько я знаю — это добавить исходный код SQLite.swift непосредственно в цель вашего собственного приложения (чтобы он скомпилировался вместе). Это некрасиво, но работает.

person radex    schedule 29.10.2014
comment
Есть еще один вопрос по той же проблеме: stackoverflow.com/questions/630911/ - person Klaas; 30.10.2014