软件包官方地址:https://gnutls.org/
笔者采用版本为 gnutls-3.5.19,编译过程中遇到的2个问题
1)合理使用自带openssl / libunistring / libtasn1库函数,减少对外部第三方库的依赖,选项参数(红色标注)如下
--enable-local-libopts --enable-openssl-compatibility --with-nettle-mini --with-included-unistring --with-included-libtasn1 --enable-silent-rules --without-p11-kit --without-tpm --without-p11-kit --without-tpm --without-idn --without-libidn2 --disable-tools --disable-gtk-doc --disable-gcc-warnings --disable-non-suiteb-curves --disable-full-test-suite --disable-tests --disable-doc --disable-manpages --disable-gtk-doc-html --with-libiconv-prefix=$(OPENSDK_PATH) --with-libz-prefix=$(OPENSDK_PATH) |
2)gnutls.pc执行遇到的问题
诚如下面report bug所描述,但是在本机上执行的结果 gnutls.pc -lcrypt32并没有真正生效,文件中出现了重复一个-lws2_32。为了先保证编译通过,仍然可以按照下述方法做兼容。真正解决问题,还需gnutls本身。
I'm cross-compiling FFmpeg with GnuTLS (on Windows using Cygwin, MinGW and GCC) for TLS 1.2 support. prefix=@prefix@ Name: GnuTLS or configure FFmpeg with --extra-libs=-lcrypt32 to correct this. In 'lib/Makefile.am' I did notice: if WINDOWS and in 'lib/.libs/libgnutls.lai' I did notice: # Libraries that this one depends upon. but as FFmpeg only checks the pkg-config file, I believe 'gnutls.pc.in' is this case is in need of an update. |