- Package:
- libwxgtk3.0-dev
- Source:
- wxwidgets3.0
- Submitter:
- Helmut Grohne
- Date:
- 2025-11-16 17:15:12 UTC
- Severity:
- normal
- Tags:
I figured that mediainfo fails to cross build from source, because it
does not find wxWidgets. It invokes wx-config as:
wx-config --host=$DEB_HOST_GNU_TYPE --unicode=yes --static=no base --version
That fails whereas it works after dropping --host:
| $ WXDEBUG=1 wx-config --host=powerpc64le-linux-gnu --unicode=yes --static=no base --version
|
| input parameters = base
| libs parameters =
| optional-libs parameters =
| input options = host
| host = powerpc64le-linux-gnu
| yes/no options = unicode static
| unicode = yes
| static = no
| flag options =
| output options = version
| version = yes
| query options =
|
| prefix = '/usr'
| exec_prefix = '/usr'
| wxconfdir = '/usr/lib/powerpc64le-linux-gnu/wx/config'
| m_host = 'powerpc64le-linux-gnu-?'
| m_toolkit = '[^-]+'
| m_widgetset = '(univ)?'
| m_chartype = 'unicode'
| m_debugtype = '(debug|release)'
| m_flavour = '(-[^-]+)?'
| m_version = '[0-9]+\.[0-9]+'
| m_linkage = ''
| configmask = '^powerpc64le-linux-gnu-?-[^-]+(univ)?-unicode-[0-9]+\.[0-9]+(-[^-]+)?$'
| this config = 'gtk2-unicode-3.0'
|
| must delegate to an alternate config
| potential delegates (0):
|
| Warning: No config found to match: ^powerpc64le-linux-gnu-?-[^-]+(univ)?-unicode-[0-9]+\.[0-9]+(-[^-]+)?$
| in /usr/lib/powerpc64le-linux-gnu/wx/config
| If you require this configuration, please install the desired
| library build. If this is part of an automated configuration
| test and no other errors occur, you may safely ignore it.
| You may use wx-config --list to see all configs available in
| the default prefix.
|
| $ WXDEBUG=1 wx-config --unicode=yes --static=no base --version
|
| input parameters = base
| libs parameters =
| optional-libs parameters =
| input options =
| yes/no options = unicode static
| unicode = yes
| static = no
| flag options =
| output options = version
| version = yes
| query options =
|
| prefix = '/usr'
| exec_prefix = '/usr'
| wxconfdir = '/usr/lib/powerpc64le-linux-gnu/wx/config'
| m_host = ''
| m_toolkit = '[^-]+'
| m_widgetset = '(univ)?'
| m_chartype = 'unicode'
| m_debugtype = '(debug|release)'
| m_flavour = '(-[^-]+)?'
| m_version = '[0-9]+\.[0-9]+'
| m_linkage = ''
| configmask = '^[^-]+(univ)?-unicode-[0-9]+\.[0-9]+(-[^-]+)?$'
| this config = 'gtk2-unicode-3.0'
|
| using this config
| 3.0.3
| user supplied libs: ''
| fetching lib flags for: ''
| retrieved: ldflags =
| wxlibs =
| alllibs =
|
| using libs: ' '
| using_gui = yes
|
| $
I believe that mediainfo's use of --host is reasonable and wx-config
should handle the native --host just fine.
In an IRC discussion Olly Betts figured the matching upstream bug (set
as forwarded above).
In testing this, I found a workaround that makes --host work. If you
copy /usr/lib/powerpc64le-linux-gnu/wx/config/gtk2-unicode-3.0 to
/usr/lib/powerpc64le-linux-gnu/wx/config/powerpc64le-linux-gnu-gtk2-unicode-3.0
and sed 's/^this_host=".*"/this_host="powerpc64le-linux-gnu"/' the new
file, then wx-config works with that --host.
I'm not sure whether that workaround breaks something, but if it
doesn't, I think the packaging could do that and thus unbreak --host.
I'm not convinced enough to set the patch tag though. %-)
Helmut
Reassigning - the GTK2 flavour packages are gone from testing and only
present in unstable due to a handful of untransitioned rdeps.
I noticed the upstream bug this is forwarded too was closed as invalid
way back in 2011. It seems unlikely upstream will fix this without
prodding, so we probably should reopen the upstream bug and provide
an explanation for why this should work.
But reviewing your report I'm confused. Is this really a cross-build or
not?
You say "native --host", which seems to imply it's not really a
cross-build but a native build with --host=`./config.guess` or
something similar, and that is indeed what the upstream bug report
this bug is forwarded to is complaining doesn't work.
But looking at mediainfo's ./Project/GNU/GUI/wxwin.m4 it seems we must
be triggering this conditional appending:
if test "$cross_compiling" = "yes"; then
wx_config_args="$wx_config_args --host=$host_alias"
fi
So it seems that mediainfo's configure script thinks we are
cross-compiling.
I checked the crossqa logs for mediainfo, but they show a failure due
to libzen, not wx:
configure: error: libzen configuration is not found
http://crossqa.debian.net/build/mediainfo_18.12-2.1_ppc64el_20191016050307.log
Cheers,
Olly
Hi Olly, Thank you! Often times, I've seen such bugs closed in a transition. I do agree with this. It seemed beyond my reasonable reach though, so I left it at documenting that it actually affects cross building in Debian today. I don't think, I can drive this upstream, but I'll help where I can. I now see how you find that confusing. In the example, I installed the wx-config on a ppc64el box, so there ppc64el was native. Once you pass --host, it stops working. The example works exactly the same way on amd64. Once you pass --host=x86_64-linux-gnu, it stops working. The usual native invocations lack --host, which is why the problem could fly under the radar for this long. Yes, the bug at hand only affects cross building, because you don't usually pass --host otherwise (given that it doesn't work at all). You're seeing a different problem #875830 here. I updated the affects such that you have more direct instances to choose from. Thank you Helmut
Hi all, Today we have asked upstream via the forwarded issue, if there is any movement on this issue. Regards Phil
Severity set to low. Regards Phil
Severity is minor as does not affect functionality to a great degree. Regards Phil