On Tue, 2011-04-26 at 10:04 +0200, Matthias Apitz wrote: > > Hello, > > I'm trying to compile /usr/ports/mail/evolution-exchange/ and the gcc > crashes with: > > [root_at_vm-9Current /usr/ports/mail/evolution-exchange]# LANG=C make > ===> Building for evolution-exchange-2.32.1_1 > gmake all-recursive > gmake[1]: Entering directory > `/usr/ports/mail/evolution-exchange/work/evolution-exchange-2.32.1' > Making all in server > gmake[2]: Entering directory > `/usr/ports/mail/evolution-exchange/work/evolution-exchange-2.32.1/server' > Making all in xntlm > gmake[3]: Entering directory > `/usr/ports/mail/evolution-exchange/work/evolution-exchange-2.32.1/server/xntlm' > CC libxntlm_la-xntlm.lo > cc1: internal compiler error: Segmentation fault: 11 > > Some notes about this: > - the system runs in a VMworkstation 7.x > - it has already compliled kernel, userland and ~1000 ports without any > crash, i.e. it is *not* the typical hardware related crash; > - the above mentioned version evolution-exchange-2.32.1_1 is a fake, in > real it is compiling the original evolution-exchange-2.32.3 sources; > - it is fully reproduceable > > What next? > (David, should it be posted to evolution_at_gnome.org as well?) Looks like a compiler bug, so probably not. What version of GCC? You probably want to file a PR at gcc.gnu.org. Run 'make V=1' so you can see the compiler command line being used, and then you can run it manually from the command line. Then try to cut the test case down as much as possible. Your task is to delete as *much* code as you can from xntlm.c, and still reproduce the problem. Try removing (or comment out the body of) one function at a time, working backwards from the end of the file. Ideally you'll be left with just a *single* function that triggers the compiler bug — and then you can remove lines of code from *that* to make it simpler, too. It doesn't matter that it will no longer *work*, as long as it still makes the compiler barf (and is still valid C code). The smaller your test case is, the better. Finally, run the compiler with '-dD -save-temps' added to the command line. It'll save its intermediate files, including a '.i' file that is completely preprocessed source. It contains everything it needed from the header files on your system, so it can be compiled *anywhere*. Then you can go to gcc.gnu.org/bugzilla and file a PR. In the meantime, however, if you don't need evolution-exchange then you can just ignore this problem and get on with the other things you were trying to test? -- David Woodhouse Open Source Technology Centre David.Woodhouse_at_intel.com Intel CorporationReceived on Tue Apr 26 2011 - 07:22:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:13 UTC