将最新的OpenSSL库与PJSIP集成时会出现以下错误。
使用以下命令使用PJSIP编译Openssl 1.1.0f。
./配置-iphone --with-SSL = /用户/ nexgetech01 /下载/ OpenSSL的换iPhone主/ bin中/ iPhoneOS10.3-armv7.sdk /
它使用openssl成功编译并准备进行构建。
之后,我使用以下命令使用PJSIP构建OpenSSL库。
制作dep&&使干净&&使
在构建它时会出现以下错误。
Undefined symbols for architecture armv7:
"_SSL_library_init", referenced from:
_init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
"_SSL_load_error_strings", referenced from:
_init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
"_TLSv1_method", referenced from:
_create_ssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
"_TLSv1_server_method", referenced from:
_init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
"_X509_get_notAfter", referenced from:
_get_cert_info in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
"_X509_get_notBefore", referenced from:
_get_cert_info in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [../bin/pjlib-test-armv7-apple-darwin_ios] Error 1
make[1]: *** [pjlib-test-armv7-apple-darwin_ios] Error 2
make: *** [all] Error 1
答案 0 :(得分:0)
检查PJSIP门票后,PJSIP开发人员修复了这个错误。我将展示如何更容易地解决上述错误。
请在以下路径中打开 ssl_sock_ossl.c 文件,
$(PJSIP_DIR)/pjlib/src/pj/ssl_sock_ossl.c
按照以下PJSIP链接覆盖ssl_sock_ossl.c文件。
使用以下链接在ssl_sock_ossl.c中正确添加绿色线条。