Я пытаюсь вызвать метод SSL_export_keying_material() из программы клиента SSL. Однако вызов этого метода завершает компиляцию программы. Я получаю следующую ошибку. Как я могу пройти эту ошибку компиляции?Проблема с компиляцией OpenSSL с SSL_export_keying_material()
clang -cc1 version 5.1 based upon LLVM 3.4svn default target x86_64-apple-darwin13.2.0
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)
End of search list.
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -dynamic -arch x86_64 -macosx_version_min 10.9.0 -o withssl -lssl -lcrypto /var/folders/1b/smlgh1256t95yw11pqs2hz380000gn/T/withssl-08785c.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
"_SSL_export_keying_material", referenced from:
_main in withssl-08785c.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1
Спасибо
Ассерт дает сообщение об ошибке: Неопределенные символы для архитектуры x86_64: «_ASSERT», на которые ссылаются: _main in withssl-b70c9a.o ld: символы (символы) не найдены для архитектуры x86_64 – user340
@kani - 'ASSERT' мой custom assert. Если у вас его нет, используйте '#define ASSERT (x) assert (x)'. Затем включите '' или' '. Вы можете прочитать об ASSERT, который я использую в OWASP [C-Based Toolchain Hardening] (http://www.owasp.org/index.php/C-Based_Toolchain_Hardening#ASSERT). Фактически, в отладочных сборках мой 'ASSERT' вызывает' SIGTRAP' (чтобы привязать отладчик), а не 'SIGABRT' (чтобы убить программу). –
jww
Thannx исправлено сейчас! – user340