[tlbuild] Issues with msys2: failed to link with -lgs, _mkdir not declared, ...
Mojca Miklavec
mojca.miklavec.lists at gmail.com
Thu Mar 1 00:51:37 CET 2018
Hi,
This is not really a supported platform, I just wanted to report it
without really expecting a fix.
If I try to build TL on Windows 7 with msys2 --with-system-icu
(because the bundled one doesn't have sufficient patches), the build
fails at dvisvgm because it's unable to find libgs. I would expect it
to either disable dvisvgm or fail earlier than during the linking
phase.
Note this:
checking for gs... no
configure: WARNING: Cannot find GhostScript in your PATH
...
checking ghostscript/iapi.h usability... no
checking ghostscript/iapi.h presence... no
checking for ghostscript/iapi.h... no
checking for dlopen in -ldl... no
configure: WARNING: PostScript support disabled
../../../source/texk/dvisvgm/configure: line 21927: test: : integer
expression expected
checking Ghostscript version... ""
../../../source/texk/dvisvgm/configure: line 22046: test: : integer
expression expected
After installing ghostscript it fails at
../../../../../source/texk/lcdf-typetools/lcdf-typetools-src/otftotfm/automatic.cc:46:29:
error: '_mkdir' was not declared in this scope
# define mkdir(dir, access) _mkdir(dir)
^
(Easy to work around, I opened
https://github.com/kohler/lcdf-typetools/issues/17 and would be
grateful for comments from builders running cygwin or the
cross-compiler.)
After that workaround the build succeeds, make check fails at zlib.test:
if ./example; then
echo ' *** zlib test OK ***'
else
echo ' *** zlib test FAILED ***'
exit 1
fi
+ ./example
zlib version 1.2.11 = 0x12b0, compile flags = 0x95
uncompress(): hello, hello!
gzread err:
+ echo ' *** zlib test FAILED ***'
*** zlib test FAILED ***
+ exit 1
FAIL zlib.test (exit status: 1)
The next one to fail is luaerror.test (in lua52, lua53 and luajit):
FAIL: luaerror
==============
1c1
< ./luatry: (command line):1: test
---
> C:\msys32\home\me\texlive\Build\build\libs\lua53\luatry.exe: (command line):1: test
FAIL luaerror.test (exit status: 1)
Then m-tx:
$ cat utils/m-tx/test-suite.log
============================================
m-tx (TeX Live) 0.63: ./test-suite.log
============================================
# TOTAL: 1
# PASS: 0
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: m-tx
==========
#! /bin/sh -vx
# Copyright 2017 Karl Berry <tex-live at tug.org>
# Copyright 2012 Peter Breitenlohner <tex-live at tug.org>
# You may freely use, modify and/or distribute this file.
rm -f mozart*
+ rm -f 'mozart*'
cp $srcdir/tests/mozart.mtx .
+ cp ../../../source/utils/m-tx/tests/mozart.mtx .
set -x
+ set -x
./prepmx mozart \
&& diff mozart.pmx $srcdir/tests/mozart.pmx \
|| exit 1
+ ./prepmx mozart
==> This is M-Tx 0.63 (Music from TeXt) <7 January 2018>
==>> Input from file mozart.mtx
Writing to mozart.pmx
You have not defined Meter, assuming "C" : WARNING in preamble
No range defined for voice RH: WARNING in preamble
No range defined for voice LH: WARNING in preamble
PrePMX done. Now run PMX.
+ diff mozart.pmx ../../../source/utils/m-tx/tests/mozart.pmx
1,27c1,27
< ---
< \def\mtxversion{0.63}
< \def\mtxdate{<7 January 2018>}
< \input mtx
< \mtxComposerLine{}{W. A. Mozart (1756--1791)}
< \mtxTitleLine{Riff in C}
< ---
< 2 -1 2 4 4 0 6 0.00000 0 1 1 20 0
<
< 60
< ./
< Tc
< \mtxPoetComposer
< Tt
< \mtxTitle
< w190m
< % Paragraph 2 line 5 bar 1
< w120m
< c83 g8+ e8 g8 c8- g8+ e8 g8 | /
< c25 e4 g4 | /
<
< %Bar 2
< d8 g8 f8 g8 c8- g8+ e8 g8 | Rb
< /
< b4-d c1 d1 c2 | /
<
< % Coded by M-Tx
---
> ---
> \def\mtxversion{0.63}
> \def\mtxdate{<7 January 2018>}
> \input mtx
> \mtxComposerLine{}{W. A. Mozart (1756--1791)}
> \mtxTitleLine{Riff in C}
> ---
> 2 -1 2 4 4 0 6 0.00000 0 1 1 20 0
>
> 60
> ./
> Tc
> \mtxPoetComposer
> Tt
> \mtxTitle
> w190m
> % Paragraph 2 line 5 bar 1
> w120m
> c83 g8+ e8 g8 c8- g8+ e8 g8 | /
> c25 e4 g4 | /
>
> %Bar 2
> d8 g8 f8 g8 c8- g8+ e8 g8 | Rb
> /
> b4-d c1 d1 c2 | /
>
> % Coded by M-Tx
+ exit 1
FAIL m-tx.test (exit status: 1)
Plus another bunch of failures:
FAIL: tftopl.test
FAIL: vftovp.test
FAIL: ptexdir/nissya.test
FAIL: eptexdir/pdfprimitive.test
FAIL: euptexdir/pdfprimitive.test
FAIL: xetexdir/xetex-bug73.test
FAIL: omegaware/charwd.test
FAIL: omegaware/check.test
FAIL: omegaware/selectfont.test
after which I stopped trying.
Mojca
PS: The patches needed for icu for windows are quite substantial:
https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-icu
and I don't expect that to be fixed in TL. Libraries need to go to bin
folder and lots of other stuff goes wrong, I didn't try to investigate
too deep. Since we already have W32TeX, cygwin and most likely a
working cross-compiler, this is a much lower priority (= no priority
at all) compared to unix platforms.
More information about the tlbuild
mailing list