Ответ 1
для -lz -lstdС++ просто добавьте это в плагин xml, и он будет работать.
<framework src="libstdc++.dylib" />
<framework src="libz.dylib" />
Я разрабатываю плагин Cordova, который использует настраиваемую инфраструктуру SDK ios. Структура зависит от двух бинарных библиотек: libcurl.a
и boost.a
. Прямо сейчас во время разработки я устанавливаю плагин в тестовое приложение следующим образом:
cordova platform add ios
cordova plugin add my.cool.plugin
Бинарные файлы включены в структуру и копируются в проект, который устанавливает плагин. Однако некоторые параметры компоновщика отсутствуют. Чтобы получить проект для сборки, мне нужно открыть xcode и выполнить два дополнительных шага вручную:
open platforms/ios/MyCoolProject.xcodeproj/
Во-первых, я должен добавить две библиотеки в раздел Связать Binary With Libraries в разделе Сборка фаз:
Во-вторых, я должен добавить два флага компоновщика (-lz -lstdc++
) в раздел Другие флаги компоновщика целевой цели проекта.
Мне бы хотелось, чтобы cordova add plugin my.cool.plugin
был достаточным для установки плагина. Итак, мой вопрос: как я могу автоматически выполнять эти задачи при установке плагина?
для -lz -lstdС++ просто добавьте это в плагин xml, и он будет работать.
<framework src="libstdc++.dylib" />
<framework src="libz.dylib" />
Вы не можете установить флаги ссылок (хотя бы в данный момент), однако в этом конкретном примере -lz фактически просто добавляет libz.dylib. Чтобы перевести это на плагин Cordova, просто добавьте:
<framework src="libz.dylib" />