C++ 未定义对DES_ecb_encrypt、MD4_Init、MD4_Update和MD4_Final的引用

C++ 未定义对DES_ecb_encrypt、MD4_Init、MD4_Update和MD4_Final的引用,c++,curl,openssl,cross-compiling,mingw-w64,C++,Curl,Openssl,Cross Compiling,Mingw W64,我需要在ubuntu 16上编译App.exe。我安装了mingw-w64、openssl和curl: sudo apt-get install mingw-w64 wget http://www.openssl.org/source/openssl-1.0.2k.tar.gz tar -xzvf openssl-1.0.2k.tar.gz cd openssl-1.0.2k/ ./Configure mingw64 shared --cross-compile-prefix=x86_64-w6

我需要在ubuntu 16上编译App.exe。我安装了mingw-w64、openssl和curl:

sudo apt-get install mingw-w64
wget http://www.openssl.org/source/openssl-1.0.2k.tar.gz
tar -xzvf openssl-1.0.2k.tar.gz
cd openssl-1.0.2k/
./Configure mingw64 shared --cross-compile-prefix=x86_64-w64-mingw32- --prefix=/usr/x86_64-w64-mingw32/
make
sudo make install
cd ..
wget https://curl.haxx.se/download/curl-7.53.1.tar.gz
tar -xzvf curl-7.53.1.tar.gz
cd curl-7.53.1/
./configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --build=i686-pc-linux-gnu --prefix=/usr/x86_64-w64-mingw32 --enable-static --disable-shared --with-ssl --with-zlib
make
sudo make install
cd ..
x86_64-w64-mingw32-g++ -v -o test.exe test.cpp -static -DCURL_STATICLIB -lcurl
执行安装时不会出现错误,但在编译时:

x86_64-w64-mingw32-g++ -v -o test.exe test.cpp -static -DCURL_STATICLIB -lcurl
test.cpp:

#include <iostream>
#include <curl/curl.h>

using namespace std;

int main(int argc, char **argv)
{
    cout << curl_version() << endl;
    return 0;
}

我不知道我错在哪里。您是这样做的?

OpenSSL 1.0.2或1.1.0默认情况下可能已删除MD4,您可能需要使用
enable-MD4
进行配置。另请参见OpenSSL 1.0.2或1.1.0默认情况下可能已删除MD4,您可能需要使用
enable-MD4
进行配置。也看到
    ...

    /usr/lib/gcc/x86_64-w64-mingw32/5.3-win32/../../../../x86_64-w64-mingw32/lib/libcurl.a(libcurl_la-curl_ntlm_core.o):curl_ntlm_core.c:(.text+0x202): undefined reference to `DES_ecb_encrypt'
    /usr/lib/gcc/x86_64-w64-mingw32/5.3-win32/../../../../x86_64-w64-mingw32/lib/libcurl.a(libcurl_la-curl_ntlm_core.o):curl_ntlm_core.c:(.text+0x2fe): undefined reference to `MD4_Init'
    /usr/lib/gcc/x86_64-w64-mingw32/5.3-win32/../../../../x86_64-w64-mingw32/lib/libcurl.a(libcurl_la-curl_ntlm_core.o):curl_ntlm_core.c:(.text+0x30c): undefined reference to `MD4_Update'
    /usr/lib/gcc/x86_64-w64-mingw32/5.3-win32/../../../../x86_64-w64-mingw32/lib/libcurl.a(libcurl_la-curl_ntlm_core.o):curl_ntlm_core.c:(.text+0x317): undefined reference to `MD4_Final'
    collect2: error: ld returned 1 exit status