我有一个在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>
我无法弄清楚为什么我会收到这些链接错误,请帮忙!