It shouldn't be before AM_INIT_AUTOMAKE, that's just busted and needs to
be fixed in hwloc...

Brian

On 5/23/12 3:23 PM, "Jeff Squyres" <jsquy...@cisco.com> wrote:

>Yea, the CANONICAL_HOST thing is because of hwloc; sorry...  It needs to
>be very, very early in configure.ac.  So getting the ordering wrong there
>was probably my fault; sorry.
>
>On May 23, 2012, at 4:53 PM, Ralph Castain wrote:
>
>> Ah, okay - didn't realize that ordering. I'll fix it - thanks!
>> 
>> On May 23, 2012, at 2:49 PM, Barrett, Brian W wrote:
>> 
>>> Not sure what you mean; the file's loaded in OMPI_LOAD_PLATFORM, at
>>>which
>>> point all the contents of the file are evaluated as environment
>>>variables.
>>> The real problem is that someone really screwed up configure somewhere
>>> along the way and called AC_CONONICAL_HOST before AM_INIT_AUTOMAKE,
>>>which
>>> means AC_PROG_GCC got evaluated really early, before
>>>OMPI_LOAD_PLATFORM is
>>> evaluated.  It really needs to be evaluated before any non-init macros.
>>> 
>>> Brian
>>> 
>>> On 5/23/12 2:44 PM, "Ralph Castain" <r...@open-mpi.org> wrote:
>>> 
>>>> I'm looking at it...
>>>> 
>>>> We pickup the file at the right place, but we don't pull any of the
>>>>flags
>>>> out of it until later. I'm trying to see if I can adjust it.
>>>> 
>>>> BTW: none of this changed from the 1.5 series, so this has been the
>>>> situation for a very long time.
>>>> 
>>>> 
>>>> On May 23, 2012, at 2:41 PM, Barrett, Brian W wrote:
>>>> 
>>>>> Yup, it sucks.  But that's not supported functionality.  Someone
>>>>>could
>>>>> possibly desire to support it, but I could never get behavior I was
>>>>> comfortable with, so I'm not making promises that should work.  The
>>>>> platform thing is a real hack to begin with in terms of what it does
>>>>>to
>>>>> autoconf...
>>>>> 
>>>>> Brian
>>>>> 
>>>>> On 5/23/12 2:37 PM, "Gunter, David O" <d...@lanl.gov> wrote:
>>>>> 
>>>>>> So perhaps I should stop calling them environment variables. Since
>>>>>>one
>>>>>> can always do something like
>>>>>> 
>>>>>> $ ./configure CFLAGS="-I/usr/include/specialK" ...
>>>>>> 
>>>>>> a line such as
>>>>>> 
>>>>>> CFLAGS="-I/usr/include/specialK"
>>>>>> 
>>>>>> should be supported by the platform file reader.  No two systems are
>>>>>> alike here and we need these platform files to manage the dozens of
>>>>>> different OMPI builds. We have different paths for the IB libs,
>>>>>>Panasas
>>>>>> file system libs and includes, etc.  Essentially, we're not going to
>>>>>> 1.6
>>>>>> at the moment.
>>>>>> 
>>>>>> -david
>>>>>> 
>>>>>> --
>>>>>> David Gunter
>>>>>> HPC-3: Infrastructure Team
>>>>>> Los Alamos National Laboratory
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On May 23, 2012, at 2:23 PM, Barrett, Brian W wrote:
>>>>>> 
>>>>>>> David -
>>>>>>> 
>>>>>>> Where exactly the platform file gets evaluated depends on a number
>>>>>>>of
>>>>>>> things that the OMPI developers don't have a lot of control over.
>>>>>>>It
>>>>>>> was
>>>>>>> never meant to be used to set environment variables, only command
>>>>>>>line
>>>>>>> arguments.  It looks like something bad has happened with ordering;
>>>>>>> I'm
>>>>>>> not sure when I'll be able to take a look, but we should be able to
>>>>>>> make
>>>>>>> it evaluate sooner...
>>>>>>> 
>>>>>>> Brian
>>>>>>> 
>>>>>>> On 5/23/12 2:16 PM, "Gunter, David O" <d...@lanl.gov> wrote:
>>>>>>> 
>>>>>>>> I think I have some understanding of what is happening. In version
>>>>>>>> 1.6,
>>>>>>>> the check for the platform file occurs after some basic compiler
>>>>>>>> testing
>>>>>>>> has already occured:
>>>>>>>> 
>>>>>>>> (dog@tu-fe1 61%) ./configure --with-platform=non-existant
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>===================================================================
>>>>>>>>===
>>>>>>>> ==
>>>>>>>> ==
>>>>>>>> ==
>>>>>>>> == Configuring Open MPI
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>===================================================================
>>>>>>>>===
>>>>>>>> ==
>>>>>>>> ==
>>>>>>>> ==
>>>>>>>> 
>>>>>>>> *** Startup tests
>>>>>>>> checking build system type... x86_64-unknown-linux-gnu
>>>>>>>> checking host system type... x86_64-unknown-linux-gnu
>>>>>>>> checking target system type... x86_64-unknown-linux-gnu
>>>>>>>> checking for gcc... gcc
>>>>>>>> checking whether the C compiler works... yes
>>>>>>>> checking for C compiler default output file name... a.out
>>>>>>>> checking for suffix of executables...
>>>>>>>> checking whether we are cross compiling... no
>>>>>>>> checking for suffix of object files... o
>>>>>>>> checking whether we are using the GNU C compiler... yes
>>>>>>>> checking whether gcc accepts -g... yes
>>>>>>>> checking for gcc option to accept ISO C89... none needed
>>>>>>>> checking how to run the C preprocessor... gcc -E
>>>>>>>> checking for grep that handles long lines and -e... /bin/grep
>>>>>>>> checking for egrep... /bin/grep -E
>>>>>>>> checking for ANSI C header files... yes
>>>>>>>> checking for sys/types.h... yes
>>>>>>>> checking for sys/stat.h... yes
>>>>>>>> checking for stdlib.h... yes
>>>>>>>> checking for string.h... yes
>>>>>>>> checking for memory.h... yes
>>>>>>>> checking for strings.h... yes
>>>>>>>> checking for inttypes.h... yes
>>>>>>>> checking for stdint.h... yes
>>>>>>>> checking for unistd.h... yes
>>>>>>>> checking minix/config.h usability... no
>>>>>>>> checking minix/config.h presence... no
>>>>>>>> checking for minix/config.h... no
>>>>>>>> checking whether it is safe to define __EXTENSIONS__... yes
>>>>>>>> configure: error: platform file non-existant not found
>>>>>>>> (dog@tu-fe1 62%)
>>>>>>>> 
>>>>>>>> For OMPI 1.4.5, the platform file check occurs right off:
>>>>>>>> 
>>>>>>>> (dog@tu-fe1 13%) ./configure --with-platform=non-existant
>>>>>>>> configure: error: platform file non-existant not found
>>>>>>>> 
>>>>>>>> 
>>>>>>>> As it is in the newer release, it will fail to work for the PGI
>>>>>>>> compilers
>>>>>>>> then.
>>>>>>>> 
>>>>>>>> -david
>>>>>>>> 
>>>>>>>> --
>>>>>>>> David Gunter
>>>>>>>> HPC-3: Infrastructure Team
>>>>>>>> Los Alamos National Laboratory
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On May 23, 2012, at 12:21 PM, Gunter, David O wrote:
>>>>>>>> 
>>>>>>>>> I thought the purpose of the platform file was to be equivalent
>>>>>>>>>to
>>>>>>>>> setting things on the command-line to configure. Still, it has
>>>>>>>>> always
>>>>>>>>> worked that way for us.
>>>>>>>>> 
>>>>>>>>> Here's what I'm seeing:
>>>>>>>>> 
>>>>>>>>> (dog@lo1-fe 297%) ./configure
>>>>>>>>> --prefix=/usr/projects/hpcsoft/lobo/openmpi/1.6.0-pgi-12.4
>>>>>>>>> --with-platform=./optimized-panasas-pgi
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>==================================================================
>>>>>>>>>===
>>>>>>>>> ==
>>>>>>>>> ==
>>>>>>>>> ===
>>>>>>>>> == Configuring Open MPI
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>==================================================================
>>>>>>>>>===
>>>>>>>>> ==
>>>>>>>>> ==
>>>>>>>>> ===
>>>>>>>>> 
>>>>>>>>> *** Startup tests
>>>>>>>>> checking build system type... x86_64-unknown-linux-gnu
>>>>>>>>> checking host system type... x86_64-unknown-linux-gnu
>>>>>>>>> checking target system type... x86_64-unknown-linux-gnu
>>>>>>>>> checking for gcc...
>>>>>>>>> /usr/projects/hpcsoft/lobo/pgi/linux86-64/12.4/bin/pgcc
>>>>>>>>> checking whether the C compiler works... no
>>>>>>>>> configure: error: in
>>>>>>>>> `/usr/projects/hpctools/dog/openmpi/openmpi-1.6':
>>>>>>>>> configure: error: C compiler cannot create executables
>>>>>>>>> See `config.log' for more details
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> The error happens because this particular compiler, pgi-12.4,
>>>>>>>>>needs
>>>>>>>>> two
>>>>>>>>> flags: -lnomp and -lnuma. Thus the reason for the LDFLAGS line in
>>>>>>>>> the
>>>>>>>>> platform file.
>>>>>>>>> 
>>>>>>>>> If I compile like this:
>>>>>>>>> 
>>>>>>>>> (dog@lo1-fe 297%) ./configure
>>>>>>>>> --prefix=/usr/projects/hpcsoft/lobo/openmpi/1.6.0-pgi-12.4
>>>>>>>>> --with-platform=./optimized-panasas-pgi LDFLAGS="-nomp -lnuma"
>>>>>>>>> 
>>>>>>>>> Then the configure proceeds normally.
>>>>>>>>> 
>>>>>>>>> -david
>>>>>>>>> --
>>>>>>>>> David Gunter
>>>>>>>>> HPC-3: Infrastructure Team
>>>>>>>>> Los Alamos National Laboratory
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On May 23, 2012, at 12:03 PM, Jeff Squyres (jsquyres) wrote:
>>>>>>>>> 
>>>>>>>>>> Can you send some output showing that those flags aren't passed
>>>>>>>>>> through, like some output from "make V=1" and or from
>>>>>>>>>>config.log?
>>>>>>>>>> 
>>>>>>>>>> Offhand, I don't know if we ever formally supported setting env
>>>>>>>>>> variables other than enable and with flag variables in the
>>>>>>>>>>platform
>>>>>>>>>> files...?
>>>>>>>>>> 
>>>>>>>>>> Sent from my phone. No type good.
>>>>>>>>>> 
>>>>>>>>>> On May 23, 2012, at 12:49 PM, "Gunter, David O" <d...@lanl.gov>
>>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>> I am trying to set LDFLAGS, CFLAGS, etc, in a platform file but
>>>>>>>>>>> the
>>>>>>>>>>> 1.6 release does not seem to pick these up.
>>>>>>>>>>> 
>>>>>>>>>>> Here's the tail end of one of our platform files, for building
>>>>>>>>>>> with
>>>>>>>>>>> the latest PGI compilers:
>>>>>>>>>>> 
>>>>>>>>>>> LDFLAGS="-nomp -lnuma"
>>>>>>>>>>> CFLAGS="-I/opt/panfs/include"
>>>>>>>>>>> CXXFLAGS="-I/opt/panfs/include"
>>>>>>>>>>> FCFLAGS="-I/opt/panfs/include"
>>>>>>>>>>> FFLAGS="-I/opt/panfs/include"
>>>>>>>>>>> CCASFLAGS="-I/opt/panfs/include"
>>>>>>>>>>> 
>>>>>>>>>>> The same platform file will configure the 1.4.5 release just
>>>>>>>>>>>fine
>>>>>>>>>>> but
>>>>>>>>>>> does not work with 1.6. If I set these variables in my
>>>>>>>>>>>environment
>>>>>>>>>>> and
>>>>>>>>>>> then run configure, it works just fine - as expected.
>>>>>>>>>>> 
>>>>>>>>>>> Has anyone else noticed this behavior?
>>>>>>>>>>> 
>>>>>>>>>>> -david
>>>>>>>>>>> --
>>>>>>>>>>> David Gunter
>>>>>>>>>>> HPC-3: Infrastructure Team
>>>>>>>>>>> Los Alamos National Laboratory
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> devel mailing list
>>>>>>>>>>> de...@open-mpi.org
>>>>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>>>>> 
>>>>>>>>>> _______________________________________________
>>>>>>>>>> devel mailing list
>>>>>>>>>> de...@open-mpi.org
>>>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>>> devel mailing list
>>>>>>>>> de...@open-mpi.org
>>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>>> 
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> devel mailing list
>>>>>>>> de...@open-mpi.org
>>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>> Brian W. Barrett
>>>>>>> Dept. 1423: Scalable System Software
>>>>>>> Sandia National Laboratories
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> devel mailing list
>>>>>>> de...@open-mpi.org
>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> devel mailing list
>>>>>> de...@open-mpi.org
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> Brian W. Barrett
>>>>> Dept. 1423: Scalable System Software
>>>>> Sandia National Laboratories
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> devel mailing list
>>>>> de...@open-mpi.org
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>> 
>>>> 
>>>> _______________________________________________
>>>> devel mailing list
>>>> de...@open-mpi.org
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>>> 
>>>> 
>>> 
>>> 
>>> -- 
>>> Brian W. Barrett
>>> Dept. 1423: Scalable System Software
>>> Sandia National Laboratories
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> devel mailing list
>>> de...@open-mpi.org
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
>-- 
>Jeff Squyres
>jsquy...@cisco.com
>For corporate legal information go to:
>http://www.cisco.com/web/about/doing_business/legal/cri/
>
>
>_______________________________________________
>devel mailing list
>de...@open-mpi.org
>http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>


-- 
  Brian W. Barrett
  Dept. 1423: Scalable System Software
  Sandia National Laboratories






Reply via email to