Path oddity in PNetCDF build/configure
Wei-Keng Liao
wkliao at northwestern.edu
Sun Oct 24 18:09:30 CDT 2021
Hi, Carl
I notice that the following configure help string from PnetCDF 1.12.2:
--with-mpi=/path/to/implementation
The installation prefix path for MPI implementation.
This --with-mpi option expects an argument. I suggest you to use
"--with-mpi=/usr/local" or not use it at all. Let me know if this works for you.
FYI. I added a check in configure.ac for this case. See
https://github.com/Parallel-NetCDF/PnetCDF/commit/21a91c5783bcd05456ec576a5599d3485a164caf
Thanks for reporting this bug.
Wei-keng
> On Oct 24, 2021, at 4:27 PM, Wei-Keng Liao <wkliao at northwestern.edu> wrote:
>
> I checked the configure command line used.
> While debugging this issue, I suggest you to remove
> "--with-mpi --enable-large-single-req" from the configure command.
>
> Option --with-mpi was designed to let users to provide the
> path of MPI installation, e.g. --with-mpi=/usr/local
>
> Use option --enable-large-single-req is when the underlying
> MPI-IO supports reading and writing more than 2GiB in a
> single call (i.e. MPI_File_read and MPI_File_write call.)
>
> Wei-keng
>
>> On Oct 24, 2021, at 4:07 PM, Carl Ponder <cponder at nvidia.com> wrote:
>>
>>
>> I attached the config.log here, but it doesn't show the steps used in the mpiccchecking:
>> configure:4284: result: /usr/bin/sed -i''
>> configure:4682: checking mpicc under yes
>> configure:4689: result: no
>> configure:4772: error:
>> -----------------------------------------------------------------------
>> Specified MPI C compiler "mpicc" cannot be found under yes
>> PnetCDF requires a working MPI C compiler. Please specify the location
>> of an MPI C compiler, either in the MPICC environment variable
>> (not CC variable) or through --with-mpi configure flag. Abort.
>> -----------------------------------------------------------------------
>> The command-line I used was
>> ./configure --prefix=/usr/local --enable-shared --with-mpi --enable-large-single-req
>>
>> Subject: Re: Path oddity in PNetCDF build/configure
>> Date: Sun, 24 Oct 2021 19:22:06 +0000
>> From: Wei-Keng Liao <wkliao at northwestern.edu>
>> To: Carl Ponder <cponder at nvidia.com>
>> CC: Bruno Pagani <bruno.pagani at astrophysics.eu>, parallel-netcdf at lists.mcs.anl.gov <parallel-netcdf at lists.mcs.anl.gov>
>>
>>
>> External email: Use caution opening links or attachments
>>
>> Please let me know the configure command used.
>>
>> Wei-keng
>>
>> Subject: Re: Path oddity in PNetCDF build/configure
>> Date: Sun, 24 Oct 2021 17:06:01 +0000
>> From: Wei-Keng Liao <wkliao at northwestern.edu>
>> To: Carl Ponder <cponder at nvidia.com>
>> CC: parallel-netcdf at lists.mcs.anl.gov <parallel-netcdf at lists.mcs.anl.gov>
>>
>>
>> External email: Use caution opening links or attachments
>>
>> Hi, Carl
>>
>> Please send me the file config.log.
>>
>> Wei-keng
>>
>>> On Oct 24, 2021, at 1:29 PM, Carl Ponder <cponder at nvidia.com> wrote:
>>>
>>>
>>> This is in a Dockerfile rather than my usual bash scripting.
>>> Here's the PATH being printed during the build
>>> Step 95/156 : RUN echo ${PATH}
>>> ---> Running in 8586a4aef68a
>>> /usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin:/usr/local/cuda/bin:/usr/local/pgi/Linux_x86_64/21.9/compilers/bin
>>> And the mpicc location tests correctly:
>>> Step 95/155 : RUN which mpicc
>>> ---> Running in e2161d554278
>>> /usr/local/bin/mpicc
>>> Subject: Re: Path oddity in PNetCDF build/configure
>>> Date: Sun, 24 Oct 2021 16:32:42 +0400
>>> From: Bruno Pagani <bruno.pagani at astrophysics.eu>
>>> To: Carl Ponder <cponder at nvidia.com>, Wei-keng Liao <wkliao at eecs.northwestern.edu>
>>> CC: parallel-netcdf at lists.mcs.anl.gov
>>>
>>>
>>> External email: Use caution opening links or attachments
>>>
>>> How do you set PATH? Did you quote it? Seems somehow your path end up being yes, likely due to expansion of its previous value.
>>>
>>>
>>> Le 24 octobre 2021 16:30:03 GMT+04:00, Carl Ponder <cponder at nvidia.com> a écrit :
>>> When I build PNetCDF with MPICC=mpicc and mpicc on my $PATH, I see this during the configure phase:
>>> ENV PATH=${PATH}:/usr/local/bin
>>> ENV MPICC mpicc
>>> ...
>>> checking for sed handling option -i ... /usr/bin/sed -i''
>>> checking mpicc under yes... no
>>> configure: error:
>>> -----------------------------------------------------------------------
>>> Specified MPI C compiler "mpicc" cannot be found under yes
>>> PnetCDF requires a working MPI C compiler. Please specify the location
>>> of an MPI C compiler, either in the MPICC environment variable
>>> (not CC variable) or through --with-mpi configure flag. Abort.
>>> -----------------------------------------------------------------------
>>> I can work around it by making the path absolute
>>> ENV MPICC /usr/local/bin/mpicc
>>> ...
>>> checking for sed handling option -i ... /usr/bin/sed -i''
>>> checking whether /usr/local/bin/mpicc exists and is executable... yes
>>> But, based on the first message, I'm thinking there's an incorrect path-search during the configure phase.
>>> This is with PNetCDF 1.12.2.
>>
>> <config.log>
>
More information about the parallel-netcdf
mailing list