1

我有一个在c中使用winsock运行良好的程序。我已经尝试将 ssl 添加到程序中,但是遇到了诸如

C:\Program Files\GnuWin32\lib\libcrypto.a(bss_sock.o):bss_sock.c|| undefined reference to `shutdown@8'|
C:\Program Files\GnuWin32\lib\libcrypto.a(bss_sock.o):bss_sock.c|| undefined reference to `shutdown@8'|
C:\Program Files\GnuWin32\lib\libcrypto.a(bss_sock.o):bss_sock.c|| undefined reference to `WSASetLastError@4'|
C:\Program Files\GnuWin32\lib\libcrypto.a(bss_sock.o):bss_sock.c|| undefined reference to `recv@16'|
C:\Program Files\GnuWin32\lib\libcrypto.a(bss_sock.o):bss_sock.c|| undefined reference to `WSASetLastError@4'|

好像libcrypto 找不到winsock 函数。winsock2 已链接,并且程序在没有加密库的情况下可以正常编译。

我正在使用 code::blocks 并具有以下内容:

-lws2_32
-lssl
-lcrypto

#include <winsock2.h>
#include <ws2tcpip.h>

#include <stdio.h>
#include <openssl/ssl.h>
#include <openssl/crypto.h>
#include <openssl/x509.h>
#include <openssl/pem.h>
#include <openssl/err.h>

我无法弄清楚为什么我会收到这些链接错误,请帮忙!

4

0 回答 0