[petsc-users] petsc with hypre on Windows

Matthew Knepley knepley at gmail.com
Mon Jul 26 04:12:24 CDT 2010


This is what we mean when we say that Hypre does not support Windows. It
really doesn't. You
can try mailing their list, but I do not anticipate a response other than
"We do not support Windows".
The build system is completely broken for this platform, as you have
experienced. So, my conclusion
would be to

  a) switch packages to something that does support Windows

or

  b) switch platforms to something that Hypre supports

  Thanks,

     Matt

On Mon, Jul 26, 2010 at 6:40 PM, Dominik Szczerba <dominik at itis.ethz.ch>wrote:

> I just reinstalled MPICH to C: (and not the default location Program
> FIles). I also followed Barry and added --with-cxx="win32fe cl"
>
> Now I am getting errors when linking to hypre. BOTH hypre and petsc are
> compiled with MSVC 2008 64bit (configured with cygwin). The library is
> called libHYPRE.a, and as I watched it compile 'cl' was used for
> compilation. It failed to link (*.lib not found) as *.a so I renamed it to
> libHYPRE.lib. Now the error is:
>
> Executing:
> /cygdrive/c/Users/Dominik/Programs/petsc-3.1-p3/bin/win32fe/win32fe cl  -o
> conftest.exe    -MT -wd4996  conftest.o
> -L/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/lib -L/cygdri
> ve/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/lib -lHYPRE
> /cygdrive/c/MPICH2/lib/fmpich2.lib /cygdrive/c/MPICH2/lib/fmpich2g.lib
> /cygdrive/c/MPICH2/lib/mpi.lib -L/cygdrive/c/Users/Dominik/Program
> s/petsc-3.1-p3/win64-msvc-release/lib
> -L/cygdrive/c/Users/Dominik/Programs/petsc-3.1-p3/win64-msvc-release/lib
> -lf2clapack
> -L/cygdrive/c/Users/Dominik/Programs/petsc-3.1-p3/win64-msvc-release/lib
> -L/c
> ygdrive/c/Users/Dominik/Programs/petsc-3.1-p3/win64-msvc-release/lib
> -lf2cblas Ws2_32.lib
> sh: C:\Users\Dominik\Programs\HYPRE-~1.0B\src\hypre\lib\libHYPRE.lib :
> warning LNK4003: invalid library format; library ignored
>
> I configured with:
> --with-mpi-dir=/cygdrive/c/MPICH2/
> --with-hypre-dir=/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/
>
> but:
>
> $ ls -la /cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/lib
> total 8624
> drwxr-xr-x+ 1 Dominik None       0 2010-07-26 10:17 .
> drwxr-xr-x+ 1 Dominik None       0 2010-07-23 23:07 ..
> -rw-r--r--+ 1 Dominik None 8830476 2010-07-23 23:13 libHYPRE.lib
>
> How can I go on from here?
>
> Regards,
> Dominik
>
> On Sun, Jul 25, 2010 at 11:10 PM, Dominik Szczerba <dominik at itis.ethz.ch>wrote:
>
>> Hi,
>>
>> I am able to build petsc-3.1-p3 on Windows 7 64bit using native compiler
>> (MSVC 2008) with:
>>
>> ./config/configure.py PETSC_DIR=$PWD PETSC_ARCH=win64-msvc-release
>> --download-c-blas-lapack=1 --with-parmetis=1 --download-parmetis=1
>> --with-x=0 --with-debugging=0 --with-cc='win32fe cl' --with-fc=0
>>
>> I also managed to build hypre-2.6.0b separately myself using the same
>> compiler. Now the last problem is to build petsc with this external package
>> (--download-hypre will fail). I add to the above configure line:
>>
>>
>> --with-hypre-dir=/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/
>>
>> but the configuration fails with:
>>
>>
>> *******************************************************************************
>>          UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log for
>> details):
>>
>> -------------------------------------------------------------------------------
>> C++ error! mpi.h could not be located at: ['/cygdrive/c/Program
>> Files/MPICH2/include']
>>
>> *******************************************************************************
>>
>> This error is clearly wrong as:
>>
>> $ ls -la '/cygdrive/c/Program Files/MPICH2/include'
>> total 309
>> drwx------+ 1 SYSTEM SYSTEM  4096 2010-07-21 15:54 .
>> drwx------+ 1 SYSTEM SYSTEM  4096 2010-07-21 15:54 ..
>> -rwx------+ 1 SYSTEM SYSTEM  4776 2007-11-02 15:50 clog_commset.h
>> -rwx------+ 1 SYSTEM SYSTEM   696 2007-11-02 15:50 clog_const.h
>> -rwx------+ 1 SYSTEM SYSTEM   731 2010-02-22 16:22 clog_inttypes.h
>> -rwx------+ 1 SYSTEM SYSTEM  1272 2007-11-02 15:50 clog_uuid.h
>> -rwx------+ 1 SYSTEM SYSTEM   437 2007-11-02 15:50 mpe.h
>> -rwx------+ 1 SYSTEM SYSTEM 11021 2008-01-28 13:59 mpe_log.h
>> -rwx------+ 1 SYSTEM SYSTEM  1833 2007-11-02 15:50 mpe_logf.h
>> -rwx------+ 1 SYSTEM SYSTEM  1159 2007-11-02 15:50 mpe_misc.h
>> -rwx------+ 1 SYSTEM SYSTEM 55623 2010-02-22 16:22 mpi.h
>> -rwx------+ 1 SYSTEM SYSTEM  2439 2010-02-22 17:11 mpi.mod
>> -rwx------+ 1 SYSTEM SYSTEM 14731 2010-02-22 17:11 mpi_base.mod
>> -rwx------+ 1 SYSTEM SYSTEM 35003 2010-02-22 17:11 mpi_constants.mod
>> -rwx------+ 1 SYSTEM SYSTEM  8417 2010-02-22 17:11 mpi_sizeofs.mod
>> -rwx------+ 1 SYSTEM SYSTEM 97301 2010-02-22 16:22 mpicxx.h
>> -rwx------+ 1 SYSTEM SYSTEM 18610 2010-02-22 16:22 mpif.h
>> -rwx------+ 1 SYSTEM SYSTEM 16765 2010-02-22 16:22 mpio.h
>>
>> Inspecting the log file shows:
>>
>> Executing: g++ -c -o conftest.o  -Wall -Wwrite-strings
>> -Wno-strict-aliasing -O    -I/cygdrive/c/Program\ Files/MPICH2/include
>> conftest.cc
>>
>> I think the error is in the white space in "Program Files". I failed to
>> convince hypre to use the default system installation of MPICH. I *had* to
>> make a hardcopy in C: to avoid the white space.
>>
>> I am sending the log to the maintainters, just in case, because I saw more
>> errors there too.
>>
>> Any help is greatly appreciated.
>>
>> Regards,
>> Dominik
>>
>
>


-- 
What most experimenters take for granted before they begin their experiments
is infinitely more interesting than any results to which their experiments
lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20100726/0018d2d3/attachment.htm>


More information about the petsc-users mailing list