X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: Rugxulo Newsgroups: comp.os.msdos.djgpp Subject: Re: DOSEMU : sh -c "./configure" : hangs when making config.status Date: Sun, 3 Jul 2011 11:42:33 -0700 (PDT) Organization: http://groups.google.com Lines: 132 Message-ID: <617dcad7-576a-48e0-95e6-c02652921106@t5g2000yqj.googlegroups.com> References: <201107031803 DOT 38427 DOT juan DOT guerrero AT gmx DOT de> NNTP-Posting-Host: 65.13.115.246 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: posting.google.com 1309718631 19386 127.0.0.1 (3 Jul 2011 18:43:51 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: Sun, 3 Jul 2011 18:43:51 +0000 (UTC) Complaints-To: groups-abuse AT google DOT com Injection-Info: t5g2000yqj.googlegroups.com; posting-host=65.13.115.246; posting-account=p5rsXQoAAAB8KPnVlgg9E_vlm2dvVhfO User-Agent: G2/1.0 X-Google-Web-Client: true X-Google-Header-Order: HUALESNKRC X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110614 Firefox/3.6.18,gzip(gfe) Bytes: 7092 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id p63J02FW007852 Reply-To: djgpp AT delorie DOT com Hi, On Jul 3, 11:03 am, Juan Manuel Guerrero wrote: > > I have tried to configure brexx-2.1.9.tar.gz on WinXP Pro SP3 installed on > VMware using stock DJGPP 2.04 toolchain.  This means I always use the latest > ports of everthing; especially bsh205bbr3. Ditto, I tried latest versions of everything too. (I had a few unnecessary workarounds in the .BAT for older tools, so I'm not sure if that's what you're referring to.) Actually, on my aunts' WinXP computer, I didn't seem to have DJGPP installed (oddly, only had my one-flop .7z oldie), though admittedly I don't use their computer for compiling often. And because I needed various things to "configure", I ended up downloading about 12 files (grep, gawk, bash, fil + txt + shl, make, sed, diff). I actually forgot binutils and djdev (oops, duh), and I think without the former "gcc -v" actually crashes! (Which was odd but kinda unsurprising when I figured it out. Still, should it crash there?) > I started the configure script without any options.  Sometimes the configuration dies with > the following error message: By default it should use -O2. Like I said, when I tried on WinXP, -Os would make it crash, but -O seemed fine. Maybe I'm wrong about that "fixing" anything, though, but it did seem to work then. > [snip] > checking for strstr... yes > configure: creating ./config.status > > malloc: dispose_cmd.c:226: assertion botched > free: start and end chunk sizes differ > Stopping myself...Abort! I searched on Google last night, and apparently this is a Bash "bug", and it's not related to 2.x specifically. > Exiting due to signal SIGABRT > Raised at eip=00082fbf > > Call frame traceback EIPs: Right, then it crashes / regdumps (which I thought was odd ... So Bash is intentionally triggering SIGABRT, which is intentionally crashing??) > F:\BREXX-~1.9> > > It is very difficult to reproduce because if I start the script a second time > the configuration may finish successfully producing and running the config.status > script.  A comparision of the config.status files produced when the configuration > passes successfully and the case when the configuration fails shows that sometimes > they are identical and sometimes they are not.  Starting the complete config.status > alone produces the required Makefiles and headers. Right. I'm not really educated regarding the (hugely confusing) GNU Autotools, but indeed it seems config.status (which requires Gawk, for some reason) is what is needed for makefile(s) creation. I really think they use too many redundant tools. Surely they don't need grep *AND* gawk *AND* sed, do they? I really wish they'd list all dependencies used in each script at the top somewhere, but it's easy to forget that they take it all for granted as "standard" (POSIX) *nix utilities. It's obvious that their utils are always present and always work and (sadly) ours aren't / don't! I kinda hate having to install everything and the kitchen sink just to build one single util. (If you're going to require Perl, do everything in Perl, don't also require 15 other tools.) Perhaps using BusyBox would solve that, but again, that's a whole other can of worms that I haven't tried. Maybe I'm too ambitious (probably) or too dumb (definitely), but it seems messy to me. Well, I can't complain too hard since it (sometimes) "mostly" works. > I replaced bsh205bbr3 with bsh205bbr2 and I had no longer this fealure.  Please > note that I tried only ten times to configure the sources using bsh205bbr2 so > there is no guarantee that replacing the bashes will really solve the issue. I would be surprised if it was fixed by reverting Bash, but who knows. > Anyway, compiling the sources out-of-the-box does not work because it requires > wcslen that is not provided by djgpp so I think that a closer look to th whole > source code may be required. wcslen() isn't needed, but the author of BRexx doesn't test on DOS anymore. In other words, there are no recent compiles for either 16- bit DOS (Borland C 3.1) nor 32-bit DOS (DJGPP v2) except my own build for DJGPP (2.1.8), which he for whatever reason never mirrored on his site. He still has 2.1.0 (16-bit) and 2.0.8 (DJGPP) mirrored, but they are kinda old and vaguely buggy. In other words, IIRC, he said he doesn't even have any DOS compilers anymore and doesn't test (except on Red Hat?? but his .rpm didn't work for me, go figure). So he's pretty much Linux only these days (though he did just port to Android). Even his WinCE compiler didn't work on Vista, only XP, so he couldn't build a newer version for that either, IIRC. Long story short: he's missing "&& !defined(MSDOS)" in lstring/ lstring.c (see my .BAT, aka brexx218.txt, at URL above). makefile.old exists and you can glean from that ("dos32") how to build it ... almost. I assume he "forgot" to include src/makefile.old and rxconio.c, so it's trickier than it seems. (Actually I think the 16- bit DOS compiler uses "MSDOS" defines also, which is kinda bad since things may be different between DJGPP, which also defines it, but I don't know of any incompatibilities offhand.) > Please note that I will not be able to solve the bash problem.  In the end we > need a port of  the current bash version and this will be a mayor job. Yeah, I know, I didn't expect that! Don't waste time on my account! But don't worry, it *does* work (and build), it just takes some fiddling. My main point was that I just wish I knew what was making DOSEMU hang for infinity (or had some vague idea), kinda annoying. That affects DJGPP as a whole and is kinda a bad bug when compiling anything in general using GNU's "./configure".