On Thu, 28 May 2020 05:52:38 +0200 (CEST) Francois Gouget fgouget@free.fr wrote:
Right, I used 'empty' in a somewhat loose sense. registry.i586.bin is small (<= 25kB instead of > 200kB) and running strings on it shows all plugins are blacklisted:
Both my files are over 900kB, and nothing is blacklisted: $ strings .cache/gstreamer-1.0/registry.i586.bin | head -n12 1.3.0 encoding various encoding-related elements /usr/lib/gstreamer-1.0/libgstencoding.so 1.12.5 LGPL gst-plugins-base openSUSE GStreamer-plugins-base package http://download.opensuse.org 2018-03-28 GstElementFactory encodebin
$ strings .cache/gstreamer-1.0/registry.x86_64.bin | head -n12 1.3.0 encoding various encoding-related elements /usr/lib64/gstreamer-1.0/libgstencoding.so 1.12.5 LGPL gst-plugins-base openSUSE GStreamer-plugins-base package http://download.opensuse.org 2018-03-28 GstElementFactory encodebin
Here are some things I found while writing / testing it on openSUSE 15.1:
- MinGW does not seem to be readily available. Compiling Wine without MinGW is likely not to get tested much in the future so that's concerning.
MinGW packages are available in the windows:mingw repository on the OBS. I've been able to build Wine with MinGW support locally and I can tell you what MinGW packages I have installed, but I don't know how many of those are actually needed--my method was to keep installing stuff until configure stopped complaining.
mingw32-cross-gcc-8.2.0-lp150.13.10.x86_64 mingw32-cross-binutils-2.32-lp150.5.1.x86_64 mingw32-filesystem-20190529-lp150.1.1.noarch mingw32-cross-cpp-8.2.0-lp150.13.10.x86_64 mingw32-cross-breakpad-tools-20140827-lp150.6.1.x86_64 mingw32-gcc-8.2.0-lp150.5.13.noarch mingw32-runtime-6.0.0-lp150.1.11.noarch mingw32-libmpc3-1.0.2-lp150.5.34.noarch mingw32-cpp-8.2.0-lp150.5.13.noarch mingw32-libmpfr4-3.1.2-lp150.5.34.noarch mingw32-headers-6.0.0-lp150.1.6.noarch mingw32-winpthreads-devel-6.0.0-lp150.1.9.noarch mingw32-libz-1.2.11-lp150.2.3.noarch mingw32-libwinpthread1-6.0.0-lp150.1.9.noarch mingw32-libgmp10-6.1.1-lp150.2.35.noarch mingw32-libgcc_s_sjlj1-8.2.0-lp150.5.13.noarch mingw32-binutils-2.32-lp150.2.3.noarch mingw64-cross-gcc-8.2.0-lp150.5.8.x86_64 mingw64-cross-binutils-2.32-lp150.3.1.x86_64 mingw64-filesystem-20170720-lp150.4.1.noarch mingw64-cross-cpp-8.2.0-lp150.5.8.x86_64 mingw64-cross-breakpad-tools-20140827-lp150.8.1.x86_64 mingw64-gcc-8.2.0-lp150.2.8.noarch mingw64-cpp-8.2.0-lp150.2.8.noarch mingw64-runtime-6.0.0-lp150.1.12.noarch mingw64-libmpc3-1.0.2-lp150.5.26.noarch mingw64-libmpfr4-3.1.4-lp150.1.26.noarch mingw64-headers-6.0.0-lp150.1.1.noarch mingw64-zlib1-1.2.11-lp150.1.4.noarch mingw64-winpthreads-devel-6.0.0-lp150.1.10.noarch mingw64-libwinpthread1-6.0.0-lp150.1.10.noarch mingw64-libgmp10-6.1.1-lp150.2.26.noarch mingw64-libgcc_s_seh1-8.2.0-lp150.2.8.noarch mingw64-binutils-2.32-lp150.2.1.noarch
- A number of -devel-32bit packages don't depend on package that contains the libraries, resulting in unusable dead links. The culprits are: fontconfig-devel-32bit libgphoto2-devel-32bit libpulse-devel-32bit libv4l-devel-32bit openal-soft-devel-32bit sane-backends-devel-32bit vulkan-devel-32bit
The libraries for all of those should be pulled in as dependencies by installing the wine-32bit package from the Emulators:Wine repository (which is itself pulled in as a dependency by the wine package), though it looks like sane isn't. I'm not sure why; the sane-backends-32bit package is in the main repository.
- There are a couple other missing -devel-32bit packages that the script works around by creating the missing symlinks: libnetapi-devel-32bit Mesa-libGL-devel-32bit!
I don't have either of those packages installed, and don't have the 64 bit libnetapi-devel package either, and configure has never complained about either one. I do have the 32 and 64 bit libraries installed for both.
- There is no OpenCL 32-bit package at all (ocl-icd-devel-32bit and libOpenCL1-32bit are both missing). And for 64-bit one needs both opencl-headers and ocl-icd-devel. OpenCL is all around weird.
Yes, it is weird. But I don't have any use for it myself, so I've never really pursued it beyond getting the packages needed to satisfy configure.
- The following packages don't seem to be necessary: bison-32bit freeglut-devel* giflib-devel* bopenssl-devel* xz-devel*
Hm, some of those may have been carried over from old howtos. I'll have to take a closer look whenever I get around to updating the wiki.
- Other missing libraries. If someone figures out a clean way to script these or has good documentation I can link to: FAudio-devel
FAudio-devel and FAudio-devel-32bit are both in the Emulators:Wine repository.
prelink (not a lib)
I don't have that installed at all. I vaguely remember it used to be required, but it hasn't been needed in years.
vkd3d-devel
I wound up building that myself; there are also a couple of other personal OBS projects that have it. https://build.opensuse.org/package/show/home:dimesio/vkd3d
In general, if something is not in the main or update repository, search the OBS, as there's a pretty good chance someone has already built it.
-- Francois Gouget fgouget@free.fr http://fgouget.free.fr/ The nice thing about meditation is that it makes doing nothing quite respectable -- Paul Dean