2014-09-15 4 views
1

Я новичок. Я скомпилировал libcrypto.a в оболочке OpenSSL, но не смог связать его с моим плагином Firebreath. Я добавил в CMakeLists.txt:Как ссылка OpenSSL's libcrypto.a в плагин Firebreath в XCode

target_link_libraries(${CURPROJECT} /path/to/libcrypto.a) 

Но CMake дает ошибку:

Невозможно указать библиотеки ссылку для целевого «/path/to/libcrypto.a», который не строить этот проект

Я использую MacOSX 10.9, XCode 5.1.1, FireBreath 1.7, OpenSSL 1.0.1i.

Пожалуйста, объясните мне, как я могу связать libcrypto.a с моим плагином?

ответ

2

Вы уже тестировали «экспериментальный» встроенной поддержкой OpenSSL описано здесь:

Firebreath libraries

+0

Утверждение 'add_firebreath_library (openssl)' решило мою проблему. Спасибо. –

2

Сообщение об ошибке вы получаете указывает, что он думает, что вы пытаетесь добавить подключаемую библиотеку для в проекте /path/to/libcrypto.a, нет что вы пытаетесь добавить ссылку библиотеки /path/to/libcrypto.a к проекту $(CURPROJECT).

Возможно, это связано с тем, что вам нужно сделать ${CURPROJECT} (переменные cmake используют {} не ()). Также может быть, что переменная CURPROJECT не определена.

Ваша команда правильная, но параметры, которые вы передаете в нее, не являются. Вы также можете использовать find_library для поиска libcrypto.a.

Конечно, с Mac OS у вас должно быть уже открыто openssl, поэтому вам не нужно указывать путь. Кроме того, как упоминалось в @hasa, вам, вероятно, лучше всего просто использовать материал firebreath openssl, который является экспериментальным, но на самом деле только на ОС Windows - Mac, он просто использует существующие. Это только помечено экспериментально, потому что я не желаю поддерживать двоичные файлы Windows.

+0

Прежде всего, позвольте мне выразить благодарность за ваш великолепный проект. И я прошу прощения за опечатку() вместо {} в вопросе. Оператор 'add_firebreath_library (openssl)' решил мою проблему. Спасибо. –

+0

Это должно сработать для вас. удачи! – taxilian

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