Bonjour à tous,

Je tente de compiler libcurl avec un backend libidn2 lié en static, malgré mes différentes tentatives, il se refuse à trouver la bibliothèque.

Le build se fait sur un CI(travis) dans une image docker ubuntu 18.04 avec mingw64.
Le target est windows (cross compilation donc)

l'alimentation des dépendances (idn2) est fait via un système non standard basé sur maven, une fois importées, les includes et libs se trouvent dans /src/src/main/scripts/win64/libidn2/win64

le build est invoqué via:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
sed -i 's#/src/target/classes/win64/lib#/src/src/main/scripts/win64/libidn2/win64/lib#g' /src/src/main/scripts/win64/libidn2/win64/lib/libidn2.la
export $ LDFLAGS="-L/src/src/main/scripts/win64/libidn2/win64/lib" CPPFLAGS="-I/src/src/main/scripts/win64/libidn2/win64/include" IDN_DIR="/src/src/main/scripts/win64/libidn2/win64/" IDN_LDFLAGS="-L/src/src/main/scripts/win64/libidn2/win64/lib" IDN_CPPFLAGS="-I/src/src/main/scripts/win64/libidn2/win64/include" 
 
cd ../../c++
./configure --disable-shared --enable-static --disable-ldap --without-libidn --with-libidn2=/src/src/main/scripts/win64/libidn2/win64/ --target=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
make
 
make install
Résultant en:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
checking whether to enable Windows native IDN (Windows native builds only)... no
checking whether to build with libidn2... yes (/src/src/main/scripts/win64/libidn2/win64/)
checking for x86_64-w64-mingw32-pkg-config... no
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libidn2 options with pkg-config... found
configure: pkg-config: IDN_LIBS: "-lidn2"
configure: pkg-config: IDN_LDFLAGS: "-L/usr/local/lib"
configure: pkg-config: IDN_CPPFLAGS: "-I/usr/local/include"
configure: pkg-config: IDN_DIR: "/usr/local/lib"
checking if idn2_lookup_ul can be linked... no
checking idn2.h usability... yes
checking idn2.h presence... yes
checking for idn2.h... yes
configure: WARNING: Cannot find libraries for IDN support: IDN disabled
Si quelqu'un à une idée ou une piste, parce que là, je suis dans le brouillard.