Перейти к содержанию
Fire Monkey от А до Я
  • 0

Использование external библиотек в IOS


ruslan

Вопрос

Вечер добрый. Прошу помочь, если кто знает как. 

Вопрос следующий:

как в fmx-приложении (ios) использовать внешние(external) библиотеки ?

В винде это .dll - вопросов нет, в linux\android это .so - проблем нет, в macos это .dylib - проблем нет.

В ios это .a файлы. Как их правильно подключать и использовать в проекте ? Про deploy знаю

 

Спасибо

Изменено пользователем ruslan
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

IdSSLOpenSSLHeaders_static

 

Этот юнит использует как раз таки либу для SSL. Открой его, думаю разберешься  :)

 

 

P.S.: Вернулся что ли?

Изменено пользователем xenon54
Ссылка на комментарий
  • 0

IdSSLOpenSSLHeaders_static

 

Этот юнит использует как раз таки либу для SSL. Открой его, думаю разберешься  :)

 

 

P.S.: Вернулся что ли?

спасибо . 

 

p.s. ненадолго )

 

посмотрел. так я их и использую, но не работает.

 

макосовский лог выдает след. ошибку:

Library not loaded: @rpath/libvpx.a

......

libvpx.a: unknown file type, first eight bytes: 0x21 0x3C 0x61 0x72 0x63 0x68 0x3E 0x0A
 
 
я даже libssl пробовал подкидывать вместо своего, путем простого переименования( понятно что она работать не будет так как прототипы функций в заголовочных файлах не туда указывают ). но ошибка та же
 
 
p.s. все эксперименты проводятся на симуляторе ios 8.4
Изменено пользователем ruslan
Ссылка на комментарий
  • 0

может кто-нибудь пояснить что значат вот эти строки кода в unit Data.DbxSqlite :

{$HPPEMIT LINKUNIT}

и

 

{$IF DEFINED(MACOS) or DEFINED(IOS)} // эта строка понятна
{$HPPEMIT ''}
{$HPPEMIT '#ifndef USEPACKAGES'}
{$HPPEMIT '/* automatically link to libsqlite3.dylib */'}
{$HPPEMIT '#pragma link "libsqlite3.dylib"'}
{$HPPEMIT '#endif'}
{$HPPEMIT ''}
{$ENDIF MACOS or IOS}
Ссылка на комментарий
  • 0

Не уверен, но похоже что нельзя прилинковать статические либы для симулятора.

 

Если у тебя нет огрызка, дай мне какой-нить тестовый проект, попробую у себя запустить и скажу результаты.

Изменено пользователем xenon54
Ссылка на комментарий
  • 0

 

может кто-нибудь пояснить что значат вот эти строки кода в unit Data.DbxSqlite :

{$HPPEMIT LINKUNIT}

и

 

{$IF DEFINED(MACOS) or DEFINED(IOS)} // эта строка понятна
{$HPPEMIT ''}
{$HPPEMIT '#ifndef USEPACKAGES'}
{$HPPEMIT '/* automatically link to libsqlite3.dylib */'}
{$HPPEMIT '#pragma link "libsqlite3.dylib"'}
{$HPPEMIT '#endif'}
{$HPPEMIT ''}
{$ENDIF MACOS or IOS}

 

http://docwiki.embarcadero.com/RADStudio/XE8/en/HPP_emit_(Delphi)

Изменено пользователем xenon54
Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...