[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: conftest files
From: |
Christopher Hulbert |
Subject: |
Re: conftest files |
Date: |
Fri, 25 Aug 2006 08:49:34 -0400 |
On 8/25/06, Ralf Wildenhues <address@hidden> wrote:
This thread seems to have died down without conclusion.
Christopher had a problem with configure link test file leftovers
spoiling following tests, with some PGI compiler:
* Christopher Hulbert wrote on Tue, Aug 15, 2006 at 11:19:38PM CEST:
> On 8/13/06, Stepan Kasal <address@hidden> wrote:
> >> >On Fri, Aug 11, 2006 at 08:52:00AM -0400, Christopher Hulbert wrote:
> >> >> information, so the PGI compiler creates some updated IPA information
> >> >> for the conftest. When testing for the next library compiled without
> >> >> IPA information, it doesn't overwrite the original IPA file and gets
> >> >> an undefined symbol resulting from the first library.
> >
> >at the end of AC_LINK_IFELSE (formerly AC_TRY_LINK), the generated
> >files are deleted. What is the name of the filei(s) with IPA
> >information? Perhaps it should be deleted, too.
> I guess the problem from an autoconf standpoint is it's compiler
> dependent and even file dependent. In this case the filename is
> conftest_ipa8_conftest.oo. The lastpart is the name of the output
> executable (conftest). The 8 is the length of the executable filename.
> The extension .oo is the optimized object file so that linking *.o
> wouldn't pull in the ipo optimized objects.
and PGI compilers 5.2, 6.0, 6.1, on GNU/Linux, and
./configure CC=pgcc CFLAGS=-Mipa
Also, the manpages state that IPA files are named:
| file.ipa InterProcedural Analyzer (IPA) file
| file.ipo InterProcedural Analyzer (IPA) file
but I find neither of them lying around
Unfortunately, I haven't had the time to try the patch yet (maybe this
weekend). Indeed the manpage does not list the .oo files (maybe I'll
file a bug report aginst PGI). In my case I had a VSIPL library
compiled with IPA. When checking for it, this is when I got the
problem.
Here's a simple example that should show you the .oo files (PGI 6.1-6):
address@hidden ~]$ cat test2.c
#include <stdlib.h>
double multiply(double x,double y)
{
return x*y;
}
address@hidden ~]$ cat test.c
#include <stdlib.h>
#include <stdio.h>
int
main(void)
{
double z = multiply(2.0,3.0);
printf("%f\n",z);
return EXIT_SUCCESS;
}
address@hidden ~]$ pgcc -Mipa -Minform=inform -Minfo=all -c test2.c
PGC-I-0222-Redundant definition for symbol __THROW
(/usr/include/sys/cdefs.h: 62)
address@hidden ~]$ pgcc -Mipa -Minform=inform -Minfo=all test.c test2.o
test.c:
PGC-I-0222-Redundant definition for symbol __THROW
(/usr/include/sys/cdefs.h: 62)
IPA: Recompiling test.o: new IPA information
IPA: Recompiling test2.o: new IPA information
address@hidden ~]$ ls *oo
test2_ipa5_a.out.oo test_ipa5_a.out.oo
* Paul Eggert wrote on Wed, Aug 16, 2006 at 07:27:22PM CEST:
> Stepan Kasal <address@hidden> writes:
> > 2006-08-16 Stepan Kasal <address@hidden>
> >
> > * lib/autoconf/general.m4 (_AC_LINK_IFELSE): Remove the IPA/IPO
> > file created by the PGI compiler.
>
> That'd be fine with me, if it does fix the problem. Thanks.
- Re: conftest files, Stepan Kasal, 2006/08/16
- Re: conftest files, Paul Eggert, 2006/08/16
- Message not available
- Message not available
- Re: conftest files, Ralf Wildenhues, 2006/08/25
- Re: conftest files, Ralf Wildenhues, 2006/08/25
- Re: conftest files, Christopher Hulbert, 2006/08/25
- Re: conftest files, Ralf Wildenhues, 2006/08/25
- Re: conftest files, Paul Eggert, 2006/08/26
- Re: conftest files,
Christopher Hulbert <=
Re: conftest files, Albert Chin, 2006/08/16