When I build pakage manually using this repo's PKGBUILD,
mingw-w64-i686-lcov-1.12-1-any.pkg.tar.xzmingw-w64-x86_64-lcov-1.12-1-any.pkg.tar.xzmingw-w64-x86_64-lcov-1.13-1-any.pkg.tar.xzwas generated.
However, these packages except mingw-w64-x86_64-lcov-1.13-1-any.pkg.tar.xz is broken.
These packages should add lcov command, however, I cannot find it after install these packages.
$ pacman -S mingw-w64-i686-lcov mingw-w64-x86_64-lcov
is also broken
When I install mingw-w64-x86_64-lcov-1.13-1-any.pkg.tar.xz, /mingw64/bin/lcov will be created, not /mingw64/bin/lcov.exe. So, When I use it in CMake(add_custom_target) with Ninja,
$ninja GTF_Test_coverage
[1/1] Resetting code coverage counters to zero.Processing code coverage counters and generating report.
FAILED: CMakeFiles/GTF_Test_coverage
cmd.exe /C "cd /D C:\msys64\home\yumetodo\GTFramework\test\build_ninja && C:\msys64\mingw64\bin\lcov --directory . --zerocounters && C:\msys64\mingw64\bin\lcov -c -i -d . -o GTF_Test_coverage.base && C:\msys64\home\yumetodo\GTFramework\test\build_ninja\GTF_Test.exe && C:\msys64\mingw64\bin\lcov --directory . --capture --output-file GTF_Test_coverage.info && C:\msys64\mingw64\bin\lcov -a GTF_Test_coverage.base -a GTF_Test_coverage.info --output-file GTF_Test_coverage.total && C:\msys64\mingw64\bin\lcov --remove GTF_Test_coverage.total --output-file C:/msys64/home/yumetodo/GTFramework/test/build_ninja/GTF_Test_coverage.info.cleaned && C:\msys64\mingw64\bin\cmake.exe -E remove GTF_Test_coverage.base GTF_Test_coverage.info GTF_Test_coverage.total"
'C:\msys64\mingw64\bin\lcov' γ―γε
ι¨γ³γγ³γγΎγγ―ε€ι¨γ³γγ³γγ
ζδ½ε―θ½γͺγγγ°γ©γ γΎγγ―γγγ γγ‘γ€γ«γ¨γγ¦θͺθγγγ¦γγΎγγγ
ninja: build stopped: subcommand failed.
such error will be occur.
Current PKGBUILD was updated in #3106 by @GitMensch
Yes, I've updated it as the old one was broken and the manual created package worked.
When doing a forced update yesterday the package (which I've installed locally and tested) was downgraded and lcov cannot be found again.
@yumetodo Did I understood you correctly that your manual build with the updated 1.13 did work - but only the 64bit version?
In general: Do you have any idea how long the "updating the binaries in the package repository may need some days" is?
version 1.12 was installed. I cannot find any command or any document.
I tried to build manually with the command below.
makepkg -cs
Then, these package was produced.
mingw-w64-i686-lcov-1.12-1-any.pkg.tar.xz: same as the package from pacman.mingw-w64-x86_64-lcov-1.12-1-any.pkg.tar.xz: same as the package from pacmanmingw-w64-x86_64-lcov-1.13-1-any.pkg.tar.xz: lcov command can be found. However, the filename extension is not exe, same for gendesc, genhtml, geninfo, genpng.note: mingw-w64-i686-lcov-1.13-1-any.pkg.tar.xz was not produced.
Did I understood you correctly that your manual build with the updated 1.13 did work - but only the 64bit version?
Only 64bit version was produced and there is problem pointed above.
BTW, Why version 1.12 package was also produced when I manually build?
In general: Do you have any idea how long the "updating the binaries in the package repository may need some days" is?
Of course, I know. However, It's seem that the PKGBUILD is also broken, so that there is no way to create correct package.
Just a note: I've created the package locally with
packman -S base-devel msys2-devel mingw-w64-i686-toolchain mingw-w64-x86_64-toolchaincd into the lcov package folder, run makepkg-mingw -sCLfThis should give you exactly two packages as tar.gz which you can install locally with pacman -U *.tar.gz
It's Jan 2018 and this is the current status? create lcov package manually as it is still empty (only metadata in tar.xz) ?
As a workaround, I built with makepkg, install mingw-w64-x86_64-lcov-1.13-1-any.pkg.tar.xz, and in /etc/pacman.conf,
IgnorePkg = mingw-w64-x86_64-lcov
@Alexpux can you build lcov?
@lazka it depends on MINGW perl that is not maintained for a long time and have many issues. So I will not build any MINGW package that depends on MINGW perl
@Alexpux ok, fair enough.
@Alexpux not sure if that would work with mingw builds, but would you accept a cygwin lcov package?
@lazka it make sense
I've opened a PR -> #1176. I've tested the cygwin version and it seems to work fine.
I've just recently installed the mingw-w64 package on my mingw-w64 setup, and it doesn't work. It's not in any of my bin directories. Even if I try it on the MSYS2 regular setup, it doesn't work.
$ pacman -S mingw-w64-x86_64-lcov
warning: mingw-w64-x86_64-lcov-1.12-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) mingw-w64-x86_64-lcov-1.12-1
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [##########################] 100%
(1/1) checking package integrity [##########################] 100%
(1/1) loading package files [##########################] 100%
(1/1) checking for file conflicts [##########################] 100%
(1/1) checking available disk space [##########################] 100%
:: Processing package changes...
(1/1) reinstalling mingw-w64-x86_64-lcov [##########################] 100%
$ lcov
bash: lcov: command not found
@VermillionAzure That is exactly what I pointed out at the beginning of this issue. And, https://github.com/Alexpux/MSYS2-packages/pull/1176 (by @lazka) will resolve this issue. I'm waiting @Alexpux's reaction.
You can also run lcov directly from source: https://gitlab.gnome.org/GNOME/pygobject/blob/14b3a9f4ddff59bd3959a68b104969f9f5a72ae5/.gitlab-ci/test-msys2.sh#L51
Most helpful comment
It's Jan 2018 and this is the current status? create lcov package manually as it is still empty (only metadata in tar.xz) ?