网络通讯问题汇总 持续更新中

网络通讯问题汇总 持续更新中

问题一

有时候在写ssl 程序的时候,编译会出现如下错误

zhangji16@zhangji16vm:/tmp$ gcc  s_ssl_cli.c    -o s_ssl_cli
/tmp/ccZu48Wk.o:在函数‘ShowCerts’中:
s_ssl_cli.c:(.text+0x14):对‘SSL_get_peer_certificate’未定义的引用
/tmp/ccZu48Wk.o:在函数‘main’中:
s_ssl_cli.c:(.text+0x13b):对‘SSL_library_init’未定义的引用
s_ssl_cli.c:(.text+0x145):对‘SSL_load_error_strings’未定义的引用
s_ssl_cli.c:(.text+0x14a):对‘SSLv3_client_method’未定义的引用
s_ssl_cli.c:(.text+0x152):对‘SSL_CTX_new’未定义的引用
s_ssl_cli.c:(.text+0x275):对‘SSL_new’未定义的引用
s_ssl_cli.c:(.text+0x293):对‘SSL_set_fd’未定义的引用
s_ssl_cli.c:(.text+0x2a2):对‘SSL_connect’未定义的引用
s_ssl_cli.c:(.text+0x2c7):对‘SSL_get_current_cipher’未定义的引用
s_ssl_cli.c:(.text+0x2cf):对‘SSL_CIPHER_get_name’未定义的引用
s_ssl_cli.c:(.text+0x322):对‘SSL_read’未定义的引用
s_ssl_cli.c:(.text+0x3bb):对‘SSL_write’未定义的引用
s_ssl_cli.c:(.text+0x45e):对‘SSL_shutdown’未定义的引用
s_ssl_cli.c:(.text+0x46d):对‘SSL_free’未定义的引用
s_ssl_cli.c:(.text+0x489):对‘SSL_CTX_free’未定义的引用
collect2: error: ld returned 1 exit status
zhangji16@zhangji16vm:/tmp$ vim s_ssl_cli.c 

肯定是链接不对,所以要链接正确的库,不过一般能想到的是 -lssl,容易漏掉-lcrypto, 而且顺序不能反

zhangji16@zhangji16vm:/tmp$ gcc  s_ssl_cli.c -lssl -lcrypto    -o s_ssl_cli

猜你喜欢

转载自blog.csdn.net/m0_37329910/article/details/88599736
今日推荐