[tex-live] 64 bits version of TeX Live on Windows

Angelo Graziosi angelo.graziosi at alice.it
Fri Jul 1 17:00:08 CEST 2016


Vincent Torri wrote:
> after the checkout of the TeX Live tree,  I run
>
> ./Build --build=x86_64-w64-mingw32 --host =x86_64-w64-mingw32


Philip Taylor wrote:
> Delighted to learn from Vincent Torri that one can, at least in
> theory, build a 64-bit TeX Live for Windows, and having overcome
> a couple of initial hurdles, I can now, like Vicent, perform a :
>
> ./Build --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
>
> within the context of an Msys command-line window.

Which "Msys command-line window"?

Please, explain..

If I try

   ./Build --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32


from msys2 shell [1], it fails, obviously, as:

$ ./Build --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
[...]

+ eval ../configure --prefix=/tmp/tlsrc/inst --datadir=/tmp/tlsrc/inst 
--disable-missing --enable-largefile --disable-shared 
--with-xdvi-x-toolkit=xaw --build=x86_64-w64-mingw32 
--host=x86_64-w64-mingw32
../configure --prefix=/tmp/tlsrc/inst --datadir=/tmp/tlsrc/inst 
--disable-missing --enable-largefile --disable-shared 
--with-xdvi-x-toolkit=xaw --build=x86_64-w64-mingw32 
--host=x86_64-w64-mingw32
++ ../configure --prefix=/tmp/tlsrc/inst --datadir=/tmp/tlsrc/inst 
--disable-missing --enable-largefile --disable-shared 
--with-xdvi-x-toolkit=xaw --build=x86_64-w64-mingw32 
--host=x86_64-w64-mingw32
configure: loading site script /etc/config.site
checking build system type... x86_64-w64-mingw32
checking host system type... x86_64-w64-mingw32
checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc
checking whether the C compiler works... no
configure: error: in `/tmp/tlsrc/Work':
configure: error: C compiler cannot create executables
See `config.log' for more details
+ echo 77
done (exit status 77) Fri Jul 1 16:32:07 CEST 2016


If I run the same command from MINGW64 shell [2], it fails building icu 
library

$ ls -lrt /tmp/tlsrc/Work/libs/
totale 168
[...]        1 lug 13.15 config.status
[...]        1 lug 13.15 Makefile
[...]        1 lug 13.15 config.log
[...]     0  1 lug 13.23 zlib
[...]     0  1 lug 13.25 lua52
[...]     0  1 lug 13.29 luajit
[...]     0  1 lug 13.30 libpaper
[...]     0  1 lug 13.31 libpng
[...]     0  1 lug 13.34 freetype2
[...]     0  1 lug 13.36 gd
[...]     0  1 lug 13.36 potrace
[...]     0  1 lug 13.38 pixman
[...]     0  1 lug 13.40 cairo
[...]     0  1 lug 13.43 gmp
[...]     0  1 lug 13.45 mpfr
[...]     0  1 lug 13.50 poppler
[...]     0  1 lug 13.54 xpdf
[...]     0  1 lug 13.55 zziplib
[...]     0  1 lug 13.56 graphite2
[...]     0  1 lug 13.57 teckit
[...]     0  1 lug 13.58 icu

because the build switches to use clang++ which does not like icu code 
(something related to 128 bit float..).

So,

$ CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ ./Build 
--build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32

fixes this issue and the build continues completing the build in libs, 
utils and many things in texk. Then it breaks at

libtool: link: x86_64-w64-mingw32-g++ -g -O2 -o xetex.exe 
xetexdir/xetex-xetexextra.o synctexdir/xetex-synctex.o xetex-xetexini.o 
xetex-xetex0.o xetex-xetex-pool.o  libxetex.a 
/tmp/tlsrc/Work/libs/harfbuzz/libharfbuzz.a 
/tmp/tlsrc/Work/libs/graphite2/libgraphite2.a 
/tmp/tlsrc/Work/libs/icu/icu-build/lib/libicuuc.a 
/tmp/tlsrc/Work/libs/icu/icu-build/lib/libicudata.a 
/tmp/tlsrc/Work/libs/teckit/libTECkit.a 
/tmp/tlsrc/Work/libs/poppler/libpoppler.a -lgdi32 
/tmp/tlsrc/Work/libs/libpng/libpng.a 
/tmp/tlsrc/Work/libs/freetype2/libfreetype.a 
/tmp/tlsrc/Work/libs/zlib/libz.a libmd5.a -LC:/msys64/mingw64/lib 
-lfontconfig -lfreetype lib/lib.a 
/tmp/tlsrc/Work/texk/kpathsea/.libs/libkpathsea.a -lwsock32
x86_64-w64-mingw32-g++.exe: error: 
C:/msys64/tmp/tlsrc/Work/libs/icu/icu-build/lib/libicudata.a: No such 
file or directory

Indeed, libicudata.a does not exist there..

  Angelo

---------
[1] MSYS2 shell is that started with C:\msys64\msys2.exe or 
C:\msys64\msys2_shell.bat or, since yesterday upgrade, 
C:\msys64\msys2_shell.cmd -msys.

[2] MINGW64 shell, instead, it that started with C:\msys64\mingw64.exe 
or C:\msys64\mingw64_shell.bat or, since yesterday upgrade, 
C:\msys64\msys2_shell.cmd -mingw64.


More information about the tex-live mailing list