I've tried to install the packages that are listed as the dependencies, individually and in order. However, pacman always tries to install all the dependencies in the wrong order every time, no matter what package I try to install first. I found a similar bug report although I can't find it at the moment. It ends up installing all the packages but lists an error about not being able to find a directory when running (I believe it is.) fontcache.exe? It doesn't appear to install correctly. I tried pacman --force
pacman -S -y
pacman --needed -S bash pacman pacman-mirrors msys2-runtime
pacman -S -u
When I try to run...
pacman --needed -S mingw-w64-i686-qt-creator mingw-w64-x86_64-qt-creator
I get this...
looking for conflicting packages...
warning: dependency cycle detected:
warning: mingw-w64-i686-harfbuzz will be installed before its mingw-w64-i686-freetype dependency
warning: dependency cycle detected:
warning: mingw-w64-i686-cairo will be installed before its mingw-w64-i686-fontconfig dependency
warning: dependency cycle detected:
warning: mingw-w64-i686-cairo will be installed before its mingw-w64-i686-freetype dependency
warning: dependency cycle detected:
warning: mingw-w64-x86_64-harfbuzz will be installed before its mingw-w64-x86_64-freetype dependency
warning: dependency cycle detected:
warning: mingw-w64-x86_64-cairo will be installed before its mingw-w64-x86_64-fontconfig dependency
warning: dependency cycle detected:
warning: mingw-w64-x86_64-cairo will be installed before its mingw-w64-x86_64-freetype dependency
Upstream issue:
https://github.com/Alexpux/MINGW-packages/issues/464
https://bugs.archlinux.org/task/40376
Installation order doesn't matter, you can simply use: pacman -S mingw-w64-x86_64-freetype.
Alright, sorry. I did search the bug reports but I didn't see that particular one. I get this error when installing... Is this related to the dependency cycle or another issue altogether? Is there a workaround or possible consequences to this bug besides for the warning? It looks like it has had this bug for a while. Thank you.
( 1/11) installing mingw-w64-x86_64-fontconfig [#####################] 100%
Fontconfig configuration is done via /mingw64/etc/fonts/conf.avail and conf.d.
Read /mingw64/etc/fonts/conf.d/README for more information.
updating font cache... C:/msys64/mingw64/bin/fc-cache.exe: error while loading shared libraries: libfontconfig-1.dll: cannot open shared object file: No such file or directory
done.
It seems to depend on lib not installed in your system.
Check which one is missing:
libgcc_s_seh-1.dll => /mingw64/bin/libgcc_s_seh-1.dll (0x61440000)
libexpat-1.dll => /mingw64/bin/libexpat-1.dll (0x68f40000)
libfreetype-6.dll => /mingw64/bin/libfreetype-6.dll (0x693c0000)
libiconv-2.dll => /mingw64/bin/libiconv-2.dll (0x66000000)
libwinpthread-1.dll => /mingw64/bin/libwinpthread-1.dll (0x64940000)
libbz2-1.dll => /mingw64/bin/libbz2-1.dll (0x626c0000)
zlib1.dll => /mingw64/bin/zlib1.dll (0x62e80000)
libpng16-16.dll => /mingw64/bin/libpng16-16.dll (0x68b40000)
libharfbuzz-0.dll => /mingw64/bin/libharfbuzz-0.dll (0x61600000)
libgraphite2.dll => /mingw64/bin/libgraphite2.dll (0x70540000)
libstdc++-6.dll => /mingw64/bin/libstdc++-6.dll (0x6fc40000)
libglib-2.0-0.dll => /mingw64/bin/libglib-2.0-0.dll (0x685c0000)
And open PR with fix or let me know so I can fix it.
Before running [ pacman -S mingw-w64-x86_64-freetype ] I am missing these five files. Not sure if this is true for mingw32 also for the 32 bit package. After installing, they are all there but fc-cache.exe does not appear to run again on reinstall of the same package so font cache may not be be valid?
libfreetype-6.dll => /mingw64/bin/libfreetype-6.dll (0x693c0000)
libpng16-16.dll => /mingw64/bin/libpng16-16.dll (0x68b40000)
libharfbuzz-0.dll => /mingw64/bin/libharfbuzz-0.dll (0x61600000)
libgraphite2.dll => /mingw64/bin/libgraphite2.dll (0x70540000)
libglib-2.0-0.dll => /mingw64/bin/libglib-2.0-0.dll (0x685c0000)
`Donat@DESKTOP-QLTV2HD MSYS ~
$ pacman -S mingw-w64-x86_64-freetype
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: mingw-w64-x86_64-harfbuzz will be installed before its mingw-w64-x86_64-freetype dependency
warning: dependency cycle detected:
warning: mingw-w64-x86_64-cairo will be installed before its mingw-w64-x86_64-freetype dependency
warning: dependency cycle detected:
warning: mingw-w64-x86_64-fontconfig will be installed before its mingw-w64-x86_64-freetype dependency
Packages (11) mingw-w64-x86_64-cairo-1.15.4-4
mingw-w64-x86_64-fontconfig-2.12.1-1
mingw-w64-x86_64-glib2-2.50.2-2
mingw-w64-x86_64-graphite2-1.3.9-1
mingw-w64-x86_64-harfbuzz-1.3.4-1
mingw-w64-x86_64-libpng-1.6.28-1 mingw-w64-x86_64-lzo2-2.09-2
mingw-w64-x86_64-pcre-8.40-1 mingw-w64-x86_64-pixman-0.34.0-3
mingw-w64-x86_64-wineditline-2.101-4
mingw-w64-x86_64-freetype-2.7.1-1
Total Download Size: 6.42 MiB
Total Installed Size: 40.13 MiB
:: Proceed with installation? [Y/n] y
:: Retrieving packages...
mingw-w64-x86_64-fo... 222.0 KiB 857K/s 00:00 [#####################] 100%
mingw-w64-x86_64-lz... 85.9 KiB 666K/s 00:00 [#####################] 100%
mingw-w64-x86_64-pi... 289.5 KiB 776K/s 00:00 [#####################] 100%
mingw-w64-x86_64-ca... 778.2 KiB 920K/s 00:01 [#####################] 100%
mingw-w64-x86_64-wi... 32.7 KiB 1259K/s 00:00 [#####################] 100%
mingw-w64-x86_64-pc... 866.0 KiB 920K/s 00:01 [#####################] 100%
mingw-w64-x86_64-gl... 2.9 MiB 927K/s 00:03 [#####################] 100%
mingw-w64-x86_64-gr... 167.2 KiB 832K/s 00:00 [#####################] 100%
mingw-w64-x86_64-ha... 329.8 KiB 961K/s 00:00 [#####################] 100%
mingw-w64-x86_64-li... 286.3 KiB 1019K/s 00:00 [#####################] 100%
mingw-w64-x86_64-fr... 512.5 KiB 894K/s 00:01 [#####################] 100%
(11/11) checking keys in keyring [#####################] 100%
(11/11) checking package integrity [#####################] 100%
(11/11) loading package files [#####################] 100%
(11/11) checking for file conflicts [#####################] 100%
(11/11) checking available disk space [#####################] 100%
:: Processing package changes...
( 1/11) installing mingw-w64-x86_64-fontconfig [#####################] 100%
Fontconfig configuration is done via /mingw64/etc/fonts/conf.avail and conf.d.
Read /mingw64/etc/fonts/conf.d/README for more information.
updating font cache... C:/msys64/mingw64/bin/fc-cache.exe: error while loading shared libraries: libfontconfig-1.dll: cannot open shared object file: No such file or directory
done.
( 2/11) installing mingw-w64-x86_64-lzo2 [#####################] 100%
( 3/11) installing mingw-w64-x86_64-pixman [#####################] 100%
( 4/11) installing mingw-w64-x86_64-cairo [#####################] 100%
Optional dependencies for mingw-w64-x86_64-cairo
mingw-w64-x86_64-glib2: libcairo-gobject [pending]
( 5/11) installing mingw-w64-x86_64-wineditline [#####################] 100%
( 6/11) installing mingw-w64-x86_64-pcre [#####################] 100%
( 7/11) installing mingw-w64-x86_64-glib2 [#####################] 100%
No schema files found: doing nothing.
( 8/11) installing mingw-w64-x86_64-graphite2 [#####################] 100%
( 9/11) installing mingw-w64-x86_64-harfbuzz [#####################] 100%
Optional dependencies for mingw-w64-x86_64-harfbuzz
mingw-w64-x86_64-icu: harfbuzz-icu support
(10/11) installing mingw-w64-x86_64-libpng [#####################] 100%
(11/11) installing mingw-w64-x86_64-freetype [#####################] 100%
Donat@DESKTOP-QLTV2HD MSYS ~
$ pacman -S mingw-w64-x86_64-freetype
warning: mingw-w64-x86_64-freetype-2.7.1-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) mingw-w64-x86_64-freetype-2.7.1-1
Total Installed Size: 2.69 MiB
Net Upgrade Size: 0.00 MiB
:: 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-freetype [#####################] 100%
Donat@DESKTOP-QLTV2HD MSYS ~
$
`
It might do it silently (notify only on error).
Thank you for the help. Just a small addendum... I ran [ pacman -S mingw-w64-x86_64-fontconfig ] right after I ran [ pacman -S mingw-w64-x86_64-freetype ] since that is the actual package that runs the fc-cache.exe command and the package install appears to freeze after it installs at 100%. I had to end task the terminal after letting it set for a couple minutes and instead of getting the normal mintty warning about closing the terminal, I got the Window's 'program not responding' warning and had to end task.
fc-cache.exe isn't freezing but it checks every installed font so takes a while depending on specs.
However at the post_install() step following message appears:
updating font cache... C:/WINDOWS/fonts: failed to write cache
done.
It doesn't seem right but I'm out of time to work on it.
That's alright and thank you. Hopefully it ends up being an easy fix once the issue becomes apparent.
The pacman debug file attached is from running [ _pacman --debug -S mingw-w64-x86_64-freetype_ ] Later when I installed the QT libraries, the font cache appears to be updated again and it appears to succeed. Mine says "updating font cache..." but nothing about the windows font cache? I have the latest MSYS2 build run with the commands from my first post.
bug_report_814_pacman_debug.txt
This two package depend on each other. So this error occuring. I also faced this.
I think , if they are combined in single package problem will be solved
This is still a problem for me.
https://ci.appveyor.com/project/fschutt/printpdf/build/job/jfhlvq4lxji6icbu
Build file is here: https://github.com/fschutt/printpdf/blob/master/appveyor.yml
If ($Env:TARGET -eq 'x86_64-pc-windows-gnu') {
$Env:PATH += ';C:\msys64\mingw64\bin'
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-x86_64-freetype"
} ElseIf ($Env:TARGET -eq 'i686-pc-windows-gnu') {
$Env:PATH += ';C:\MinGW\bin'
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-i686-freetype"
}
resolving dependencies...
looking for conflicting packages...
C:\msys64\usr\bin\bash : warning: dependency cycle detected:
At line:6 char:3
+ C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-i686-fr ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (warning: dependency cycle detected::String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
warning: mingw-w64-i686-harfbuzz will be installed before its mingw-w64-i686-freetype dependency
Packages (7) mingw-w64-i686-glib2-2.54.1-1 mingw-w64-i686-graphite2-1.3.10-1 mingw-w64-i686-harfbuzz-1.6.0-1 mingw-w64-i686-libpng-1.6.34-1 mingw-w64-i686-pcre-8.41-1 mingw-w64-i686-wineditline-2.201-1 mingw-w64-i686-freetype-2.8.1-1
Now what? Has this been fixed? Is there a solution / workaround?
@fschutt it's upstream issue as mentioned in Arch task.
You should fix your powershell script not to fail on warning https://stackoverflow.com/questions/30709884/how-to-ignore-warning-errors
@mati865 This doesn't work, AppVeyor quits no matter if there is a warning or not:
https://ci.appveyor.com/project/fschutt/printpdf/build/job/y7bxkbbr1yam2agl
https://github.com/fschutt/printpdf/blob/master/appveyor.yml#L45-L47
I mean, it's not even a warning it's "executed with exception". I doubt you can supress this as a warning.
@fschutt catching exception should work (I don't use PS personally so I'm not sure).
Why not change this
from:
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-x86_64-freetype"
to:
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-x86_64-freetype || true"
?
@mingwandroid Alright, see for yourself: https://ci.appveyor.com/project/fschutt/printpdf/build/job/3v998k3o6x37mwdy
Nothing works. Exception catching doesn't work, error levels don't work, || true doesn't work. I hate Windows.
@fschutt you have a typo:
If ($Env:TARGET -eq 'x86_64-pc-windows-gnu') {
$Env:PATH += ';C:\msys64\mingw64\bin'
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-x86_64-freetype"
} ElseIf ($Env:TARGET -eq 'i686-pc-windows-gnu') {
$Env:PATH += ';C:\MinGW\bin'
C:\msys64\usr\bin\bash -lc "pacman -S --noconfirm mingw-w64-x86_64-freetype || true"
}
There are 2 mingw-w64-x86_64-freetype and it could fail on the first.
You could also try routing stderr to /dev/null.
I'm out of ideas, this PS is so bad.