MSYS2 is a rolling distro, which means that occasionally some packages will be out of sync and need a rebuild. Occasionally, those rebuilds can be tricky... or just fail.
r15493 makes it possible to ship the older dependencies by simply dropping them in the win32\bundle-extra
directory, this just gets bundled automatically in the installation directory.
This hack was needed because opencv has not yet been rebuilt since the libwebp soname got bumped.
But for this hack to work, we need to still have the old library around.. So maybe we need to take regular snapshots of the msys installation directory? PITA.
I did have the old libwebp-6.dll
on my 64-bit build VM, but not on the 32-bit one... and since the rebuild of opencv still fails, the 32-bit builds will just moan about webcam support until opencv is fixed upstream.
See also ticket:678#comment:55 which is a similar issue with libgfortran-3.dll
Works well enough, and 64-bit builds are now the default.
Another issue worth recording here: the opencv package updates have new hard dependencies but those are not installed automatically, breaking the package (so no webcam):
export XPKG="mingw-w64-${MSYSTEM_CARCH}-" pacman -S ${XPKG}glog ${XPKG}ceres-solver ${XPKG}gflags ${XPKG}protobuf
And as of today, opencv is still broken on 64-bit systems. Trying to run "import cv2" fails with Invalid access to memory location
.
Found another undeclared dependency on mingw-w64-i686-cereal
, required at least for building from source - could be runtime too.
Building opencv from source created a package that installed in the wrong prefix (!?), but once relocated it contains working python2 and python3 modules, tested on both 32 and 64-bit (yay!) - only one is still broken: the 32-bit python2 module crashes (sigh). (wontfix that)
Still wontfix opencv, but we need r17571 to prevent errors if it isn't found when we create a package.
The opencv package has been fixed, so r17774 reverts r17571.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1483