Задать вопрос

Какой самый стабильный и лучший вариант собрать QUIC для curl [cross-compilation]?

Пробую собрать с максимальными "плюшками"
spoiler

export T=x86_64-w64-mingw32

export GSASL_DIR=/root/curl-build/winlibs/gsasl-mingw

NGHTTP3_DIR=/root/curl-build/winlibs/nghttp3-1.12.0-mingw

export CPPFLAGS="-I${NGHTTP3_DIR}/include -I${GSASL_DIR}/include"
export LDFLAGS="-L${NGHTTP3_DIR}/lib -L${GSASL_DIR}/lib -lgsasl"
export LIBS="-lgsasl"

export PKG_CONFIG_PATH="/root/curl-build/winlibs/libpsl-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/libidn2-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/nghttp3-1.12.0-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/libunistring-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/libiconv-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/openssl-quictls-mingw/lib64/pkgconfig:\
/root/curl-build/winlibs/zlib-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/ngtcp2-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/brotli-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/zstd-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/nghttp2-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/libgsasl-mingw/lib/pkgconfig:\
/root/curl-build/winlibs/libssh2-mingw/lib/pkgconfig"
CC=$T-gcc AR=$T-ar RANLIB=$T-ranlib STRIP=$T-strip \
../curl-8.16.0/configure --host=$T --build=$(uname -m)-pc-linux-gnu \
--prefix=/root/curl-build/winlibs/curl-mingw-latest \
--with-libgsasl=/root/curl-build/winlibs/gsasl-mingw \
--with-zlib=/root/curl-build/winlibs/zlib-mingw \
--cache-file=config.cache \
--with-openssl=/root/curl-build/winlibs/openssl-quictls-mingw \
--with-ca-bundle="cacert.crt" \
--with-ca-fallback \
--with-ca-embed="/root/curl-8.16.0/curl-ca-bundle.crt" \
--with-nghttp3=/root/curl-build/winlibs/nghttp3-1.12.0-mingw \
--with-nghttp2=/root/curl-build/winlibs/nghttp2-mingw \
--with-ngtcp2=/root/curl-build/winlibs/ngtcp2-mingw \
--with-brotli=/root/curl-build/winlibs/brotli-mingw \
--with-zstd=/root/curl-build/winlibs/zstd-mingw \
--with-libidn2=/root/curl-build/winlibs/libidn2-mingw \
--with-libpsl=/root/curl-build/winlibs/libpsl-mingw \
--with-libssh2=/root/curl-build/winlibs/libssh2-mingw \
--with-openssl-quic=/root/curl-build/winlibs/openssl-quictls-mingw \
--enable-http3 \
--enable-alt-svc \
--enable-headers-api \
--enable-hsts \
--enable-websockets \
--enable-ipv6 \
--enable-threaded-resolver \
--enable-httpsrr \
--enable-sspi \
--enable-ssls-export \
--enable-shared


пробовал BoringSSL, с горем пополам получилось, но при конфигурации ngtcp2 его не видит, пишет libngtcp2_crypto_boringssl: no, с quictls (который последняя версия 3.4.0) вообще не получилось скомпилить.
Вот интересует какой вариант, чтобы все всё видели и нормально скомпилить это всё.

В целом я уже собрал, но хочется, чтобы всё было последних версий.
BlagoYar@HUMAN C:\Users\BlagoYar
# curl --version
curl 8.16.0 (x86_64-w64-mingw32) libcurl/8.16.0 quictls/3.1.7 zlib/1.3.1 brotli/1.1.0 zstd/1.5.7 libidn2/2.3.6 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.64.0 ngtcp2/1.11.0 nghttp3/1.12.0 libgsasl/2.2.2
Release-Date: 2025-09-10
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli gsasl HSTS HTTP2 HTTP3 HTTPS-proxy HTTPSRR IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSLS-EXPORT SSPI threadsafe TLS-SRP UnixSockets zstd
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы