From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32792 invoked by alias); 29 Aug 2018 21:07:23 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 32768 invoked by uid 89); 29 Aug 2018 21:07:22 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=Maintenance, 283, forum X-HELO: mail-wr1-f52.google.com Received: from mail-wr1-f52.google.com (HELO mail-wr1-f52.google.com) (209.85.221.52) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 29 Aug 2018 21:07:20 +0000 Received: by mail-wr1-f52.google.com with SMTP id v16-v6so6074782wro.11 for ; Wed, 29 Aug 2018 14:07:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=2aR6h+jeckgahsphY0yyhJBDfD9HLdEhEq2rGVqtp1o=; b=bO6zVmpaWh4F80W5vQcsZe2Fcn3zpVRFp3GENajuMUFCoEZwhdYbRMY0Pkeoru11RL QdJz0mUmihma+TZyrLfdfZ/LR2F/NyXRBchc7OKLSHCRlmP/kmWFldWRVyZ8JDUSVQUs 2imb7NNi9W4znd8pQHZfOzBtQvMQiFbKYWl21eLcunmjoefMjRu+BVpR47pvizMRBwZc GwX6xNBATE71SHKQJQZ/kMTqVt4BDw1QcjvcTYQ+A8vgMpJc+UcpIR6fYu9qOJYiLaWE Q9Pbvdi1skE07CM8NGUq01AtlkXvkWlSFDIxAaThWvIOMJZDWhh3hT4iKpT83lEaDJSQ iVLQ== Return-Path: Received: from ?IPv6:2a01:e35:2eac:2a80:7c7d:2022:97ba:9bab? ([2a01:e35:2eac:2a80:7c7d:2022:97ba:9bab]) by smtp.gmail.com with ESMTPSA id z3-v6sm3274386wmf.12.2018.08.29.14.07.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 29 Aug 2018 14:07:17 -0700 (PDT) Subject: Re: [PATCH][PR build/23568] Fix gdb-7.12.1 MinGW/MSYS build issue To: Pedro Alves , Simon Marchi Cc: Eli Zaretskii , gdb-patches@sourceware.org References: <56c5911c-e0ba-5a17-64bb-3634af60a07d@gmail.com> <18eaf339-ca0a-061c-4a17-b837e6ef81a2@redhat.com> <83wosa2yos.fsf@gnu.org> <56153263-c5e6-45ce-8629-c5a77cf17f5b@gmail.com> <92136d29-0bec-7fcf-23c6-26dd4608dbd8@gmail.com> From: SiZiOUS Message-ID: Date: Wed, 29 Aug 2018 21:07:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-SW-Source: 2018-08/txt/msg00780.txt.bz2 First of all, thank for your time! Also thanks for the explanation, you're right, I was thinking 7.12 was maintenance release of 7.11 and I understand that isn't the case. Just for your information, I tried as requested to compile the current version of gdb (gdb-8.2.50.20180829), just to know the results. It doesn't compile:   CXX    ser-tcp.o ser-tcp.c:43:21: fatal error: wspiapi.h: No such file or directory  #include                      ^ compilation terminated. make[2]: *** [ser-tcp.o] Error 1 I searched this file in my MinGW install but no luck, so I went to Internet and found something: https://groups.google.com/forum/#!topic/wx-dev/mquqPOh8fFs That file doesn't exist on MinGW, but exists on MinGW-w64. According to the post above, I tried to fix the issue with: #ifdef __MINGW32__ #include #else #include #endif But new errors are coming:   CXX    ser-tcp.o ser-tcp.c: In function 'int try_connect(const addrinfo*, unsigned int*)': ser-tcp.c:171:39: error: invalid use of incomplete type 'const struct addrinfo'    int sock = gdb_socket_cloexec (ainfo->ai_family, ainfo->ai_socktype,                                        ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c:171:57: error: invalid use of incomplete type 'const struct addrinfo'    int sock = gdb_socket_cloexec (ainfo->ai_family, ainfo->ai_socktype,                                                          ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c:172:11: error: invalid use of incomplete type 'const struct addrinfo'       ainfo->ai_protocol);            ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c:188:27: error: invalid use of incomplete type 'const struct addrinfo'    if (connect (sock, ainfo->ai_addr, ainfo->ai_addrlen) < 0)                            ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c:188:43: error: invalid use of incomplete type 'const struct addrinfo'    if (connect (sock, ainfo->ai_addr, ainfo->ai_addrlen) < 0)                                            ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c: In function 'int net_open(serial*, const char*)': ser-tcp.c:283:19: error: aggregate 'addrinfo hint' has incomplete type and cannot be defined    struct addrinfo hint;                    ^~~~ ser-tcp.c:300:23: error: 'getaddrinfo' was not declared in this scope           &hint, &ainfo);                        ^ ser-tcp.c:305:27: error: 'gai_strerror' was not declared in this scope       name, gai_strerror (r));                            ^ ser-tcp.c:327:68: error: invalid use of incomplete type 'struct addrinfo'        for (struct addrinfo *iter = ainfo; iter != NULL; iter = iter->ai_next) ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ ser-tcp.c:378:20: error: invalid use of incomplete type 'struct addrinfo'    if (success_ainfo->ai_protocol == IPPROTO_TCP)                     ^~ In file included from ser-tcp.c:28:0: ./common/netstuff.h:34:41: note: forward declaration of 'struct addrinfo'    explicit scoped_free_addrinfo (struct addrinfo *ainfo)                                          ^~~~~~~~ make[2]: *** [ser-tcp.o] Error 1 So this time, fixing GDB for MinGW is harder than 7.12.1. Too tired to do that now. Have a good night, Mike Laranjeira (SiZiOUS) Le 29/08/2018 à 20:27, Pedro Alves a écrit : > On 08/29/2018 05:59 PM, SiZiOUS wrote: >> >> But in fact, GDB 7.11.1 is confirmed to work. As this version isn't compiling under MinGW for some reason, I updated to the latest 7.x version, and the only issue I had was this little build problem. >> I've not tested GDB now, so I don't know if it's work or not with the Dreamcast. >> >> For the 8.x, I opened a bug about building on MinGW, but seems to be a similar reason. > I think you're confused with GDB's release numbering. > The set of 7.x releases are not all part of a single maintenance "gdb 7" > tree/family. Likewise, set of 8.x releases are not all part of a > single maintenance "gdb 8" tree/family. I.e., 7.12 is not a maintenance > release of 7.11. 7.11 is not a maintenance release of 7.10. etc. > > GDB 7.12 was just as much of an increase over 7.11, as 8.0 was over 7.12. > It just happened that when we got all the way up to "12" we though that > that would be a good time to roll over to 8.0, because small numbers are > nice. > > Maintenance bugfix releases are instead the z in x.y.z, as in > 7.11.1, 7.11.2, etc. > > Currently, we're about to release gdb 8.2, so the 8.2.x branch > in git is open for regression bugfixes. Build fixes like yours > would be a good fit too. It's possible to merge fixes to older > branches, but it's not very usual. As we move on to newer > releases, the older branches tend to become unmaintained. > > Thanks, > Pedro Alves