Closed vadi2 closed 3 years ago
Can you re-install gettext using apt again?
Thanks.
I don't install gettext using apt - vcpkg pulls it in:
Running 'vcpkg install --recurse @/home/runner/work/Mudlet/Mudlet/3rdparty/our-vcpkg-dependencies/vcpkg-x64-linux-dependencies --clean-after-build' in directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg' ...
Computing installation plan...
The following packages will be built and installed:
* gettext[core,tools]:x64-linux -> 0.21#1
hunspell[core]:x64-linux -> 1.7.0#3
* libiconv[core]:x64-linux -> 1.16#8
lua[core]:x64-linux -> 5.1.5-1 -- /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/../our-vcpkg-dependencies/lua
pugixml[core]:x64-linux -> 1.11.4
sqlite3[core]:x64-linux -> 3.35.4
yajl[core]:x64-linux -> 2.1.0-1
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet x64-linux...
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/e7/e7de485d792a374e90834b374e81faccad0b80bc.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/f4/f40cfa983b61419355287b9180a11556c09d85a7.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/c3/c3474cbef698a6f5929f98f25af0dcb97b322d7a.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/06/0621fc3fe4c76d1f41bd21eeca3f77c8b909a7de.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/dc/dc9d546fbcb6e7a2fe9305bfbed046febd450bab.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/cf/cf61b94b5d206d12cbe7d47193c52b7d1063519c.zip
Could not locate cached archive: /home/runner/.cache/vcpkg/archives/65/6551c8e8537b5cb5c73d0cc95098c58414676f40.zip
Starting package 1/7: libiconv:x64-linux
Building package libiconv[core]:x64-linux...
-- Performing post-build validation
-- Performing post-build validation done
Stored binary cache: /home/runner/.cache/vcpkg/archives/e7/e7de485d792a374e90834b374e81faccad0b80bc.zip
Building package libiconv[core]:x64-linux... done
Installing package libiconv[core]:x64-linux...
Installing package libiconv[core]:x64-linux... done
Elapsed time for package libiconv:x64-linux: 24.41 ms
Starting package 2/7: gettext:x64-linux
Building package gettext[core,tools]:x64-linux...
-- Performing post-build validation
-- Performing post-build validation done
Stored binary cache: /home/runner/.cache/vcpkg/archives/f4/f40cfa983b61419355287b9180a11556c09d85a7.zip
Building package gettext[core,tools]:x64-linux... done
Installing package gettext[core,tools]:x64-linux...
Installing package gettext[core,tools]:x64-linux... done
Elapsed time for package gettext:x64-linux: 16.93 ms
Starting package 3/7: hunspell:x64-linux
Building package hunspell[core]:x64-linux...
-- Downloading https://github.com/hunspell/hunspell/archive/v1.7.0.tar.gz -> hunspell-hunspell-v1.7.0.tar.gz...
-- Extracting source /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/downloads/hunspell-hunspell-v1.7.0.tar.gz
-- Applying patch 0001_fix_unistd.patch
-- Using source at /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/src/v1.7.0-658f8373e7.clean
CMake Deprecation Warning at scripts/cmake/vcpkg_check_features.cmake:182 (message):
calling `vcpkg_check_features` without the `FEATURES` keyword has been
deprecated.
Please add the `FEATURES` keyword to the call.
Call Stack (most recent call first):
ports/hunspell/portfile.cmake:10 (vcpkg_check_features)
scripts/ports.cmake:142 (include)
-- Configuring x64-linux-dbg
-- Configuring x64-linux-rel
-- Generating configure for x64-linux
-- Finished generating configure for x64-linux
-- Configuring x64-linux-dbg
-- Configuring x64-linux-rel
-- Building x64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:146 (message):
Command failed: /usr/bin/make V=1 -j 3 -f Makefile dist
Working Directory: /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg
See logs for more information:
/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-out.log
/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-err.log
Would you like me to pre-install it using apt for a text?
Sorry for late, does this issue still exist?
Yes - and it's an issue because it's blocking an update to the latest vcpkg, which is one of the solutions for fixing the 3221225477
error that occurs with CMake v3.21.
Using commit d417ae59d6e9aa20d9f812b5deb966645c54687d gives the following error logs (thank you for showing them inline now):
Starting package 3/7: hunspell:x64-linux
Building package hunspell[core]:x64-linux...
[LogCollection][Start]File:'/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-out.log':
/usr/bin/make dist-gzip am__post_remove_distdir='@:'
make[1]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg'
/usr/bin/make distdir-am
make[2]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg'
if test -d "hunspell-1.7.0"; then find "hunspell-1.7.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "hunspell-1.7.0" || { sleep 5 && rm -rf "hunspell-1.7.0"; }; else :; fi
test -d "hunspell-1.7.0" || mkdir "hunspell-1.7.0"
(cd po && /usr/bin/make top_distdir=../hunspell-1.7.0 distdir=../hunspell-1.7.0/po \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[3]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
test -z "update-po" || /usr/bin/make update-po
make[4]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
/usr/bin/make hunspell.pot-update
make[5]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
sed -e '/^#/d' .././../src/v1.7.0-9251c91a4b.clean/po/remove-potcdate.sin > t-remove-potcdate.sed
mv t-remove-potcdate.sed remove-potcdate.sed
package_gnu=""; \
test -n "$package_gnu" || { \
if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \
LC_ALL=C find -L .././../src/v1.7.0-9251c91a4b.clean -maxdepth 1 -type f \
-size -10000000c -exec grep 'GNU hunspell' \
/dev/null '{}' ';' 2>/dev/null; \
else \
LC_ALL=C grep 'GNU hunspell' .././../src/v1.7.0-9251c91a4b.clean/* 2>/dev/null; \
fi; \
} | grep -v 'libtool:' >/dev/null; then \
package_gnu=yes; \
else \
package_gnu=no; \
fi; \
}; \
if test "$package_gnu" = "yes"; then \
package_prefix='GNU '; \
else \
package_prefix=''; \
fi; \
if test -n '' || test 'https://github.com/hunspell/hunspell/issues' = '@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address=''; \
else \
msgid_bugs_address='https://github.com/hunspell/hunspell/issues'; \
fi; \
case `: --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \
: --default-domain=hunspell --directory=.././../src/v1.7.0-9251c91a4b.clean \
--add-comments=TRANSLATORS: --keyword=_ --keyword=N_ --from-code=UTF-8 \
--files-from=.././../src/v1.7.0-9251c91a4b.clean/po/POTFILES.in \
--copyright-holder='Free Software Foundation, Inc.' \
--msgid-bugs-address="$msgid_bugs_address" \
;; \
*) \
: --default-domain=hunspell --directory=.././../src/v1.7.0-9251c91a4b.clean \
--add-comments=TRANSLATORS: --keyword=_ --keyword=N_ --from-code=UTF-8 \
--files-from=.././../src/v1.7.0-9251c91a4b.clean/po/POTFILES.in \
--copyright-holder='Free Software Foundation, Inc.' \
--package-name="${package_prefix}hunspell" \
--package-version='1.7.0' \
--msgid-bugs-address="$msgid_bugs_address" \
;; \
esac
test ! -f hunspell.po || { \
if test -f .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot-header; then \
sed -e '1,/^#$/d' < hunspell.po > hunspell.1po && \
cat .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot-header hunspell.1po > hunspell.po; \
rm -f hunspell.1po; \
fi; \
if test -f .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot; then \
sed -f remove-potcdate.sed < .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot > hunspell.1po && \
sed -f remove-potcdate.sed < hunspell.po > hunspell.2po && \
if cmp hunspell.1po hunspell.2po >/dev/null 2>&1; then \
rm -f hunspell.1po hunspell.2po hunspell.po; \
else \
rm -f hunspell.1po hunspell.2po .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot && \
mv hunspell.po .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot; \
fi; \
else \
mv hunspell.po .././../src/v1.7.0-9251c91a4b.clean/po/hunspell.pot; \
fi; \
}
make[5]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
test -z "ca.po-update de.po-update es.po-update hu.po-update it.po-update pl.po-update pt_BR.po-update tg.po-update" || /usr/bin/make ca.po-update de.po-update es.po-update hu.po-update it.po-update pl.po-update pt_BR.po-update tg.po-update
make[5]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
ca:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=ca ca.po hunspell.pot -o ca.new.po
de:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=de de.po hunspell.pot -o de.new.po
es:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=es es.po hunspell.pot -o es.new.po
hu:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=hu hu.po hunspell.pot -o hu.new.po
it:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=it it.po hunspell.pot -o it.new.po
pl:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=pl pl.po hunspell.pot -o pl.new.po
pt_BR:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=pt_BR pt_BR.po hunspell.pot -o pt_BR.new.po
tg:
cd .././../src/v1.7.0-9251c91a4b.clean/po && msgmerge --lang=tg tg.po hunspell.pot -o tg.new.po
make[5]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
/usr/bin/make update-gmo
make[5]: Entering directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
cd .././../src/v1.7.0-9251c91a4b.clean/po && rm -f ca.gmo && : -c --statistics --verbose -o ca.gmo ca.po
cd .././../src/v1.7.0-9251c91a4b.clean/po && rm -f es.gmo && : -c --statistics --verbose -o es.gmo es.po
cd .././../src/v1.7.0-9251c91a4b.clean/po && rm -f de.gmo && : -c --statistics --verbose -o de.gmo de.po
make[5]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
make[4]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
make[3]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg/po'
make[2]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg'
make[1]: Leaving directory '/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg'
[LogCollection][End]File:'/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-out.log'.
[LogCollection][Start]File:'/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-err.log':
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for ca.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for de.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for es.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for hu.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for it.po failed!
/bin/sh: 10: msgmerge: not found
msgmerge for pl.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for pt_BR.po failed!
/bin/sh: 1: msgmerge: not found
/bin/sh: 10: msgmerge: not found
msgmerge for tg.po failed!
mv: cannot stat 't-es.gmo': No such file or directory
make[5]: *** [Makefile:182: .././../src/v1.7.0-9251c91a4b.clean/po/es.gmo] Error 1
make[5]: *** Waiting for unfinished jobs....
mv: cannot stat 't-ca.gmo': No such file or directory
make[5]: *** [Makefile:182: .././../src/v1.7.0-9251c91a4b.clean/po/ca.gmo] Error 1
mv: cannot stat 't-de.gmo': No such file or directory
make[5]: *** [Makefile:182: .././../src/v1.7.0-9251c91a4b.clean/po/de.gmo] Error 1
make[4]: *** [Makefile:504: update-po] Error 2
make[3]: *** [Makefile:473: distdir] Error 2
make[2]: *** [Makefile:592: distdir-am] Error 1
make[1]: *** [Makefile:586: distdir] Error 2
make: *** [Makefile:688: dist] Error 2
[LogCollection][End]File:'/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-err.log'.
-- Downloading https://github.com/hunspell/hunspell/archive/v1.7.0.tar.gz -> hunspell-hunspell-v1.7.0.tar.gz...
-- Extracting source /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/downloads/hunspell-hunspell-v1.7.0.tar.gz
-- Applying patch 0001_fix_unistd.patch
-- Applying patch 0002-disable-test.patch
-- Applying patch 0003-fix-win-build.patch
-- Using source at /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/src/v1.7.0-9251c91a4b.clean
-- Configuring x64-linux-dbg
-- Configuring x64-linux-rel
-- Generating configure for x64-linux
-- Finished generating configure for x64-linux
-- Configuring x64-linux-dbg
-- Configuring x64-linux-rel
-- Building x64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:155 (message):
Command failed: /usr/bin/make V=1 -j 3 -f Makefile dist
Working Directory: /home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/x64-linux-dbg
See logs for more information:
/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-out.log
/home/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/build-dist-x64-linux-dbg-err.log
Call Stack (most recent call first):
scripts/cmake/vcpkg_build_make.cmake:194 (vcpkg_execute_build_process)
ports/hunspell/portfile.cmake:71 (vcpkg_build_make)
scripts/ports.cmake:141 (include)
Seems like it is related to https://github.com/microsoft/vcpkg/issues/13518? gettext
is being built by vcpkg right before hunspell
, but it's tools are not being found.
The gettext tools are installed by the tools
feature of port gettext, and obviously you would want to install them for the host.
With https://github.com/microsoft/vcpkg/pull/18159 merged 11 hours ago, there is also a cmake wrapper, and kf5i18n can serve as an example how to add the dependency to vcpkg.json.
Okay, hunspell has the right dependency. But still, the tools are not automatically added to the path.
hunspell installs fine in the November 2020 version of vcpkg - something to keep in mind is that this is a regression.
Oh, the last minute changes to #18159 seem to have disabled the tools for linux again. I need to stop allowing edits by maintainers.
Oh, the last minute changes to #18159 seem to have disabled the tools for linux again. I need to stop allowing edits by maintainers.
Actually, no. #18159 adds building the tools for linux. So your issue is likely to be fixed in HEAD of master,
gettext[core,tools]:x64-linux -> 0.21#4
Using commit 7d2541c69cc2f9099a118de1a80f59e29c5de15d - on Windows a new transient dependency is introduced and it breaks the build first (https://github.com/microsoft/vcpkg/issues/19117). On macOS hunspell fails:
Starting package 3/7: hunspell:x64-osx
Building package hunspell[core]:x64-osx...
[LogCollection][Start]File:'/Users/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/autoconf-x64-osx-out.log':
Copying file ABOUT-NLS
Copying file config.rpath
Copying file m4/gettext.m4
Copying file m4/host-cpu-c-abi.m4
Copying file m4/iconv.m4
Copying file m4/intlmacosx.m4
Copying file m4/lib-ld.m4
Copying file m4/lib-link.m4
Copying file m4/lib-prefix.m4
Copying file m4/nls.m4
Copying file m4/po.m4
Copying file m4/progtest.m4
Copying file po/Makefile.in.in
Copying file po/Makevars.template
Copying file po/Rules-quot
Copying file po/en@boldquot.header
Copying file po/en@quot.header
Copying file po/insert-header.sin
Copying file po/remove-potcdate.sin
[LogCollection][End]File:'/Users/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/autoconf-x64-osx-out.log'.
[LogCollection][Start]File:'/Users/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/autoconf-x64-osx-err.log':
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: running: autopoint --force
autoreconf: running: aclocal --force -I m4
Can't exec "aclocal": No such file or directory at /usr/local/Cellar/autoconf/2.71/share/autoconf/Autom4te/FileUtils.pm line 274.
autoreconf: error: aclocal failed with exit status: 2
[LogCollection][End]File:'/Users/runner/work/Mudlet/Mudlet/3rdparty/vcpkg/buildtrees/hunspell/autoconf-x64-osx-err.log'.
On Ubuntu it works now, that is a step forward thanks 👍 all logs can be found here.
You really need a few more packages via brew for macOS: the missing aclocal is probably part of automake
.
(Full CI configuration: https://github.com/microsoft/vcpkg/blob/master/scripts/azure-pipelines/osx/configuration/vagrant-box-configuration.json)
Oh, the last minute changes to #18159 seem to have disabled the tools for linux again. I need to stop allowing edits by maintainers.
Actually, no. #18159 adds building the tools for linux. So your issue is likely to be fixed in HEAD of master, gettext[core,tools]:x64-linux -> 0.21#4
So should we update to the latest to fix this issue?
@JackBoosY The issue here is fixed now: Port hunspell already was complete (updating PATH), and the recent merge of #18159 added the missing tools for Linux. (The new issues in the last comments are not related to hunspell, but to missing autoconf/automake (macos) and unsuitable mingw32-make (mingw).)
Just to note, the hunspell port did not require that tooling as of Nov 2020. Is it intended that it is now a required outside dependency?
AFAICS port hunspell was build with a custom cmake build system (from vcpkg) in Nov 2020. Today the port uses the original build system. History: https://github.com/microsoft/vcpkg/commits/master/ports/hunspell
Makes sense 👍
I install both automake autoconf
via brew now, but the Can't exec "aclocal": No such file or directory at /usr/local/Cellar/autoconf/2.71/share/autoconf/Autom4te/FileUtils.pm line 274.
error still persists. This seems like an issue in brew's autoconf... does it really work for vcpkg?
@vadi2 Can you please provide the failure logs?
@vadi2 Please re-install automake
in your pipeline.
Thanks.
I install both
automake autoconf
via brew now, but theCan't exec "aclocal": No such file or directory at /usr/local/Cellar/autoconf/2.71/share/autoconf/Autom4te/FileUtils.pm line 274.
error still persists. This seems like an issue in brew's autoconf... does it really work for vcpkg?
@vadi2 Your CI is broken. "(macOS) Install non-vcpkg dependencies" comes after "Restore from cache and run vcpkg".
Thanks, fixed now.
Host Environment Ubuntu 16.04 in github actions.
To Reproduce Steps to reproduce the behavior:
./vcpkg install hunspell
Failure logs out log:
err log:
Additional context Worked fine as of 4b222f8d, broken as of latest mater.