Я пытаюсь перекрестно скомпилировать Linux (Debian Jessie) для Windows. Я собрал zlib
и OpenSSL
, а скрипт настройки cURL нашел библиотеки, однако он все еще сказал, что поддержка SSL отключена.Невозможно перекрестно скомпилировать cURL с поддержкой OpenSSL для Windows
Это сценарий сборки я использовал:
# ZLIB
cd /builds
curl -O -J http://www.zlib.net/zlib-1.2.11.tar.gz
tar xf zlib-1.2.11.tar.gz
cd /builds/zlib-1.2.11
CC=x86_64-w64-mingw32-gcc ./configure --prefix=/usr/x86_64-w64-mingw32 --static
make && make install
# OPENSSL
cd /builds
curl -O -J https://www.openssl.org/source/openssl-1.1.0c.tar.gz
tar xf openssl-1.1.0c.tar.gz
cd /builds/openssl-1.1.0c
CROSS_COMPILE="x86_64-w64-mingw32-" ./Configure -DHAVE_STRUCT_TIMESPEC -lz -lws2_32 zlib mingw64 no-shared --prefix=/usr/x86_64-w64-mingw32
make depend
make && make install
# CURL
cd /builds
curl -O -J https://curl.haxx.se/download/curl-7.52.1.tar.gz
cd /builds/curl-7.52.1
./configure --prefix=/usr/x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --enable-optimize --with-ssl=/usr/x86_64-w64-mingw32
Он успешно нашел библиотеку, но тогда SSL только что отключен из-за отсутствия --with-ssl
checking whether to enable Windows native SSL/TLS (Windows native builds only)... no
checking whether to enable Apple OS native SSL/TLS... no
checking for gdi32... yes
configure: PKG_CONFIG_LIBDIR will be set to "/usr/x86_64-w64-mingw32/lib/pkgconfig"
checking for x86_64-w64-mingw32-pkg-config... /usr/bin/pkg-config
checking for openssl options with pkg-config... found
configure: pkg-config: SSL_LIBS: "-lssl -lcrypto "
configure: pkg-config: SSL_LDFLAGS: "-L/usr/x86_64-w64-mingw32/lib "
configure: pkg-config: SSL_CPPFLAGS: "-I/usr/x86_64-w64-mingw32/include "
checking for HMAC_Update in -lcrypto... no
checking for HMAC_Init_ex in -lcrypto... no
checking for ssl_version in -laxtls... no
configure: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.
configure: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.
checking default CA cert bundle/path... configure: WARNING: skipped the ca-cert path detection when cross-compiling
no
checking whether to use builtin CA store of SSL library... no
Полный журнал: https://paste.kde.org/pwzewydif
Это не сработало, однако я обнаружил, что я мог бы построить Curl 7.49 *, но не> = 7,50 *... Это может быть ошибкой сценария конфигурации, я сообщаю об этом автору. Спасибо за вашу помощь. –
Рад, что это работает для вас с 7.49, но у меня нет проблем с созданием 7.50. * (Я тестировал 7.50.0), может быть, проблема в другом месте –
Что относительно 7.52.1, что является последним? И на какой платформе вы строите? (Кстати, к сожалению, я получил некоторые «неопределенные ссылки» для самой cURL при построении ... Я бы восстановил изображение докера, чтобы дать ему еще одну попытку ...) –