2015-02-19 4 views
1

Есть ли способ указать библиотеки iOS для соединения при создании приложения из командной строки с помощью команды xcodebuild? Я знаю, что мы можем указать сторонние фреймворки, используя OTHER_LDFLAGS = ".. path/to/framework", но поскольку встроенные пути структуры могут различаться в зависимости от машины/sdk и т. Д., Я предполагаю, что может быть несколько лучше, чем это ,библиотеки команд командной строки xcodebuild

Благодаря

ответ

1

xcodebuild строит файлы проекта, поэтому, как правило, можно настроить все в проекте, а не прохождение многих параметров конфигурации. Чтобы связать встроенные фреймворки, вы просто используете шаг сборки Link and Libraries и добавляете необходимые вам фреймворки. Встроенные фреймворки должны автоматически сохраняться как SDK-relative. (Обратите внимание, что вы никогда не должны использовать это для связывания библиотек относительного пути в вашем пакете, обычно лучше использовать для них OTHER_LIBTOOLFLAGS.)

Флаг компоновщика, который вам нужен, если вам нужно, это -framework <name>. Но вы не должны этого очень часто использовать при использовании xcodebuild. В основном используется при непосредственном звонке clang или ld.

+0

спасибо большое за ответ. Причина, по которой я хочу это сделать, заключается в том, что я создаю пользовательскую структуру, и я хочу интегрировать эту фреймворк вместе с другими необходимыми встроенными фреймами в примерное приложение (в основном автоматизировать и проверять чтение, которое я предоставляю вместе с каркасом). Можете ли вы указать мне на какие-либо примеры, в которых используется опция флаг-компоновщика «-framework»? – Ravi

+0

Если это настраиваемая инфраструктура, которая строится как часть этого проекта (собственный xcodeproj является членом рабочей области или является целью проекта), вы фактически можете использовать шаг «Библиотеки ссылок», и это будет отлично работать (поскольку он знает зависимость). Вам нужно только '-framework', если вы отправляете двоичную структуру, на которую ссылается относительный путь. Затем вы просто добавляете это в 'OTHER_LIBTOOLFLAGS'. Я не видел этого в проектах с открытым исходным кодом, поэтому я не знаю ни одного онлайн-примера. Для хорошего реального примера работы с каркасами см. Adium (adium.im). –

+0

Я отправляю двоичную структуру. Я попробую OTHER_LIBTOOLFLAGS и проверить источник Adium. Я отправлю сообщение, если найду пример. Большое спасибо за ваше время. – Ravi

Смежные вопросы