delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/10/04/16:41:22

DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 594KfLsg1713961
Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com
Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 594KfLsg1713961
Authentication-Results: delorie.com;
dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=x+rVBX2C
X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DD0DE3858C31
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1759610479;
bh=otWVfv5nfxp4PpAJWJVhC3PXP4pcSWKnLVuIZZ+kAx8=;
h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
From;
b=x+rVBX2CZBpPxYCDGo48hqFgSk6/YnOvTntNDamiQS7mwmqQ3pZ5GPTi4ewb1O+yp
EhKqYwtj6Fs9WheHmv49zUgWiaicf8gER7PcybejcrDKXTYlBciZpx5sXIqQn1Q8fi
dbgGgqgoNqs7k9IGJFzETe5TAUI154cNgJ5bvGrQ=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 915263858D20
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 915263858D20
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1759610454; cv=none;
b=WyLMQFkAPnsUUs21rFbz58+L23c8e+Nm/vaaW+jKPWWXAzqDVBSnh3zAQ6UxvcI691/lm7jb76gV7kh7PfGFBATs5pRnZARLZYT0WO5ZLwMBF8jHjpQz4NjhsDit2O5hFUfD90Y+P59KFpoK6gQgPPBffggjCv756pj4YX8zdlM=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1759610454; c=relaxed/simple;
bh=+o1TVi2vQQDBiujvUJiAfx6OVok6lTExmJuYneyBjqs=;
h=Message-ID:Date:MIME-Version:From:Subject:To:DKIM-Signature;
b=XdJEgtRHGnIaHy9hXhYFdGdw3k39h719FgD5Eg2C26LaSY2u125iKOaWrP9RfKgoCDPhfx/7hhn74tVfns2kw3f7NT/cUm1V96R/m6hCI/hC9kRn7w37RTVCyjw9W5LcEkXOoRDcpshL5Gy1dimqnFkDeKMM7z9z4SEoy0MQZHI=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 915263858D20
Message-ID: <7b8f2904-26a2-44b6-b97d-fbc7c8f4df2c@SystematicSW.ab.ca>
Date: Sat, 4 Oct 2025 14:40:51 -0600
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Help wanted with compile error with wxWidgets3.1
To: cygwin AT cygwin DOT com
References: <76f19efc-f06d-4bb2-ac32-edc846394cc3 AT hamishmb DOT com>
Organization: Systematic Software
In-Reply-To: <76f19efc-f06d-4bb2-ac32-edc846394cc3@hamishmb.com>
X-Stat-Signature: yco3fbi8p7ton7xtmhqac31sdmr8ijw5
X-Rspamd-Server: rspamout01
X-Rspamd-Queue-Id: 3832A6000C
X-Session-Marker: 427269616E2E496E676C69734053797374656D6174696353572E61622E6361
X-Session-ID: U2FsdGVkX1+HNepiY3a6QfBNAfawQLaGbv94wsae+t4=
X-HE-Tag: 1759610452-503596
X-HE-Meta: U2FsdGVkX18f1sUeGd66/c5ywLmQwWRBMEA7f28jWtY/ptAU4oxLB2eUR4RaaUOvoJrlUjPuTXjGQ8rVRjVmkzRbRkdb3htZMCHJ2EDkUn4Q11H6IXVlKy2rCTxCY53VENwI17suDyXrdY23rsIB6BHB9vvMVL7ehanRGeU1keXPwurLV37JwjvntFeUJq/MhCJBDWxXuPFPwB/SmUC5EcV6j09rR4suGgDU0/XyRspDTn5Iqmf4BnrisrsJZowMjgMFiLPmPUW2CQDHRqn4wS54OXnEHZY0ae+khJDRzLfz7qauUwhDlAkPgTxT20yAEOwsaPhS53lFDwUQ4IsX6XYSP5GnsYPK4A+myNL/9vBAWOejOP7UwVyDR2gCzKJzmgbfNDZZhxc=
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.30
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: Brian Inglis via Cygwin <cygwin AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT com
Cc: Brian Inglis <Brian DOT Inglis AT SystematicSW DOT ab DOT ca>
Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com>
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 594KfLsg1713961

On 2025-10-03 05:58, Hamish McIntyre-Bhatty via Cygwin wrote:
> I'm trying once again to get newer versions of wxWidgets and wxPython to work 
> under Cygwin, but I've noticed I'm running into a new problem when simply 
> rebuilding wxWidgets 3.1.5 that I last built around the end of March (the prefix 
> option to configure needed to be set), and I don't understand how it ever 
> compiled with the error I'm getting.


BUILD_REQUIRES="..."

can be split into lines within the string

BUILD_REQUIRES="...
..."

for easier readability, and, given cygport runs under bash, the second instance 
for checking can drop $BUILD_REQUIRES and use:

BUILD_REQUIRES+=" ...
..."

you can also normally drop libPKG# if you specify libPKG-devel because devel 
packages always require their latest library package; for example:

BUILD_REQUIRES="gettext-devel libcogl-devel libEGL-devel libexpat-devel
libGL-devel libGLU-devel libgstreamer1.0-devel libgstinterfaces1.0-devel
libgtk2.0-devel libgtk3-devel libiconv-devel libjpeg-devel libmspack-devel
libnotify-devel libpng-devel libSDL2-devel libSDL2_image-devel
libSDL2_mixer-devel libSDL2_net-devel libSDL2_ttf-devel
libsecret1-devel libSM-devel libtiff-devel
libwebkitgtk1.0-devel libwebkitgtk3.0-devel
libX11-devel libXpm-devel libXtst-devel liblzma-devel zlib-devel
autoconf cppunit doxygen gcc-core gcc-g++ make pkg-config"
# gettext libsecret1_0

For remote patches, I define the patch source URI prefix like:

FEDORA=https://src.fedoraproject.org/rpms/wxGTK3/raw/f38/f

as it is more readable, reproducible, and consistently runnable, if I specify 
the latest Fedora release *in the current repo*, rather than main, master, or 
rawhide, which may change any time and drop or update patches which no longer 
apply; for example:

FEDORA=https://src.fedoraproject.org/rpms/wxGTK3/raw/f38/f

PATCH_URI="
	$FEDORA/wxGTK3-3.0.3-abicheck.patch
	fix-filename-test-wx31.patch
	$FEDORA/force-x11-for-wxgl.patch
...
"

Under src_compile, rather than running configure directly, you could define 
CYGCONF_ARGS with the common options before the function, and invoke cygconf 
with specific options, and that will also provide any other definitions required 
for, and perform commands with expected options to make Cygwin builds; for example:

CYGCONF_ARGS="
	 --enable-mediactrl
	 --enable-optimise
	--disable-rpath
	 --enable-unicode
	   --with-expat
	   --with-libpng
	   --with-libjpeg
	   --with-libiconv
	   --with-libmspack
	   --with-libnotify
	   --with-libtiff
	   --with-libxpm
	   --with-opengl
	   --with-regex=sys
	   --with-sdl
	   --with-zlib
"
#	 --prefix=/usr
#	 --enable-shared

src_compile() {
	local myconf
	
	pushd ${S}

	pushd ${S}/locale
	rm -f *.mo
	cygmake allmo -j1
	popd
	
	mkdir -p ${B}/gtk2
	pushd ${B}/gtk2

	cygconf --with-gtk=2
	cygmake

     	popd

	mkdir -p ${B}/gtk3
	pushd ${B}/gtk3

	cygconf --with-gtk=3
	cygmake

	popd
...
}

Sometimes it is better to allow packages which can, detect whether and which 
options are required in your environment, and for you to check whether options 
are appropriately detected and enabled or disabled, or added to your list.
> In amongst other errors, I get "error: wxSoundPLaybackStatus does not name a 
> type" and various similar errors. You can get the repo with the full cygport 
> setup here: https://gitlab.com/hamishmb/cygwin-wxwidgets3.1/-/tree/3.1.5? 
> ref_type=heads
Sure that capitalization is correct: wxSoundP'L'aybackStatus?
Check the library docs, online docs, dev sites, and online repos.

It appears that wxSoundPLaybackStatus could be either a typo for, or intended as 
a variable with, type wxSoundPlaybackStatus, maybe in wx/sound.h?

> Can anyone give me any hints? I first tried building wxWidgets 3.1.7 but that 
> failed with a different error that I also don't know how to solve. I'm not sure 
> how I'm meant to know which header file things are meant to be in when I get 
> "was not declared in this scope" errors - any hints with those or do I just need 
> to be intimately familiar with GNU source code for that?

To find headers with symbols, start with:

$ grep -R symbol /usr/include/
$ cygcheck -f /usr/include/**/header.h

or if not installed (remember - egrep patterns - may need ''s; no absolute paths 
- all relative to install root):

$ cygcheck -p usr/include/.*header.h
$ cygcheck -p usr/lib/gcc/x86_64-pc-cygwin/.*/include/.*header.h
$ cygcheck -p usr/lib/gcc/x86_64-pc-cygwin/.*/include/c++/.*header.h
$ cygcheck -p header.h

for example:

$ grep -R wxSoundPlaybackStatus /usr/include/
$ cygcheck -f /usr/include/**/wx/sound.h
$ cygcheck -p wxSoundPlaybackStatus
Found 0 matches for wxSoundPlaybackStatus
$ cygcheck -p usr/include/.*wx/sound.h
Found 7 matches for usr/include/.*wx/sound.h
libwx_baseu3.0-devel-3.0.4-1 - libwx_baseu3.0-devel: wxWidgets C++ application 
framework
libwx_baseu3.0-devel-3.0.5.1-1 - libwx_baseu3.0-devel: wxWidgets C++ application 
framework
libwx_baseu3.0-devel-3.0.5.1-2 - libwx_baseu3.0-devel: wxWidgets C++ application 
framework
libwx_baseu3.1-devel-3.1.5-1 - libwx_baseu3.1-devel: wxWidgets C++ application 
framework
libwx_baseu3.1-devel-3.1.5-2 - libwx_baseu3.1-devel: wxWidgets C++ application 
framework
libwx_gtk2u2.8-devel-2.8.12.1-6 - libwx_gtk2u2.8-devel: wxWidgets C++ 
application framework (development)
libwx_gtk2u2.8-devel-2.8.12.1-7 - libwx_gtk2u2.8-devel: wxWidgets C++ 
application framework (development)


> Please note I'll be on holiday soon so I may not reply quickly.

-- 
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
                                 -- Antoine de Saint-Exupéry

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019