As Satish noted, I am using the expected version 2.6b. I could not see any changes in the latest hypre tarball and the automatically downloaded linux version that compiles properly. But I have sent the diff to the maint list.<br>
<br>I am compiling hypre natively on Windows 7 64 bit using Visual Studio  2008 compiler and linker. Dumpbin does not complain anymore as before, reporting a valid library.  I can compile hypre examples (NOT following their apparently broken way described in the documentation) and I can independently link to this library myself using the native cl.exe/link.exe compiler/linker. The created executables do not reveal any dependencies to Cygwin, according to the Dependency Walker. I see no reason whatsoever to assume something is wrong here.<br>
<br>So as far as I can tell the problem is with Petsc. I am glad to offer any testing needed.<br><br>PS. Actually, the libraries are being created despite the compilation failure (see below). Is there a way to quickly check the validity of the hypre part?<br>
<br> Directory of C:\Users\Dominik\Programs\petsc-3.1-p3\win64-msvc-release\lib<br><br>30.07.2010  02:01    &lt;DIR&gt;          .<br>30.07.2010  02:01    &lt;DIR&gt;          ..<br>30.07.2010  01:32         1&#39;233&#39;774 libf2cblas.lib<br>
30.07.2010  01:34        13&#39;624&#39;086 libf2clapack.lib<br>30.07.2010  01:35           554&#39;358 libmetis.lib<br>30.07.2010  01:35           473&#39;324 libparmetis.lib<br>30.07.2010  02:01        17&#39;916&#39;714 libpetsc.lib<br>
               5 File(s)     33&#39;802&#39;256 bytes<br>               2 Dir(s)  831&#39;127&#39;900&#39;160 bytes free<br><br>Regards,<br>Dominik<br><br><br><div class="gmail_quote">On Fri, Jul 30, 2010 at 2:40 AM, Satish Balay <span dir="ltr">&lt;<a href="mailto:balay@mcs.anl.gov">balay@mcs.anl.gov</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">The log says its hypre-2.6.0b. [which is correct for petsc-3.1]<br>
<br>
So I suspect either petsc sources or hypre sources were modified - thus causing<br>
this breakage in compile.<br>
<br>
Satish<br>
<br>
-----<br>
Configure Options: --configModules=PETSc.Configure --optionsModule=PETSc.compilerOptions PETSC_DIR=/cygdrive/c/Users/Dominik/Programs/petsc-3.1-p3 PETSC_ARCH=win64-msvc-release --download-c-blas-lapack=1 --with-mpi-dir=/cygdrive/c/MPICH2 --with-hypre-dir=/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/ --with-parmetis=1 --download-parmetis=1 --with-x=0 --with-debugging=0 --with-cc=&quot;win32fe cl&quot; --with-cxx=&quot;win32fe cl&quot; --with-fc=0 --useThreads=0<br>

<div><div></div><div class="h5"><br>
<br>
<br>
On Thu, 29 Jul 2010, Barry Smith wrote:<br>
<br>
&gt;<br>
&gt;   Are you sure the version of hypre you installed is the version that works with the version of PETSc you are installing. Check config/PETSc/packages/hypre.py for the version that it needs<br>
&gt;<br>
&gt;    Barry<br>
&gt;<br>
&gt; On Jul 29, 2010, at 7:06 PM, Dominik Szczerba wrote:<br>
&gt;<br>
&gt; &gt; I have now managed to properly compile hypre natively and petsc configures correctly with it.<br>
&gt; &gt; However, I get errors during building.<br>
&gt; &gt; As requested I am sending win64-msvc-release/conf/configure.log to <a href="mailto:petsc-maint@mcs.anl.gov">petsc-maint@mcs.anl.gov</a><br>
&gt; &gt; Any hints are appreciated.<br>
&gt; &gt;<br>
&gt; &gt; Dominik<br>
&gt; &gt;<br>
&gt; &gt; mhyp.c<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(165) : error C2143: syntax error : missing &#39;;&#39; before &#39;type&#39;<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(166) : error C2275: &#39;hypre_AuxParCSRMatrix&#39; : illegal use of this type as an expression<br>
&gt; &gt;         C:\Users\Dominik\Programs\HYPRE-~1.0B\src\hypre\include\_hypre_IJ_mv.h(82) : see declaration of &#39;hypre_AuxParCSRMatrix&#39;<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(166) : error C2065: &#39;aux_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(167) : error C2275: &#39;hypre_CSRMatrix&#39; : illegal use of this type as an expression<br>
&gt; &gt;         c:\users\dominik\programs\hypre-2.6.0b\src\hypre\include\seq_mv.h(62) : see declaration of &#39;hypre_CSRMatrix&#39;<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(167) : error C2065: &#39;hdiag&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(167) : error C2065: &#39;hoffd&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(167) : error C2100: illegal indirection<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(176) : error C2065: &#39;par_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(176) : warning C4047: &#39;=&#39; : &#39;int&#39; differs in levels of indirection from &#39;hypre_ParCSRMatrix *&#39;<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(177) : error C2065: &#39;aux_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(177) : warning C4047: &#39;=&#39; : &#39;int&#39; differs in levels of indirection from &#39;hypre_AuxParCSRMatrix *&#39;<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(178) : error C2065: &#39;hdiag&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(178) : error C2065: &#39;par_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(178) : error C2223: left of &#39;-&gt;diag&#39; must point to struct/union<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(179) : error C2065: &#39;hoffd&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(179) : error C2065: &#39;par_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(179) : error C2223: left of &#39;-&gt;offd&#39; must point to struct/union<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(185) : error C2065: &#39;hdiag&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(185) : error C2223: left of &#39;-&gt;i&#39; must point to struct/union<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(185) : warning C4022: &#39;PetscMemcpy&#39; : pointer mismatch for actual parameter 2<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(185) : error C2198: &#39;PetscMemcpy&#39; : too few arguments for call<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(186) : error C2065: &#39;hdiag&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(186) : error C2223: left of &#39;-&gt;j&#39; must point to struct/union<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(186) : warning C4022: &#39;PetscMemcpy&#39; : pointer mismatch for actual parameter 2<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(186) : error C2198: &#39;PetscMemcpy&#39; : too few arguments for call<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(187) : error C2065: &#39;hdiag&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(187) : error C2223: left of &#39;-&gt;data&#39; must point to struct/union<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(187) : warning C4022: &#39;PetscMemcpy&#39; : pointer mismatch for actual parameter 2<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(187) : error C2198: &#39;PetscMemcpy&#39; : too few arguments for call<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(189) : error C2065: &#39;aux_matrix&#39; : undeclared identifier<br>
&gt; &gt; C:\Users\Dominik\Programs\PETSC-~3.1-P\src\dm\da\utils\mhyp.c(189) : error C2223: left of &#39;-&gt;need_aux&#39; must point to struct/union<br>
&gt; &gt; LINK : fatal error LNK1181: cannot open input file &#39;mhyp.o&#39;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On Mon, Jul 26, 2010 at 2:00 PM, Wee-Beng TAY &lt;<a href="mailto:zonexo@gmail.com">zonexo@gmail.com</a>&gt; wrote:<br>
&gt; &gt; Hi all,<br>
&gt; &gt;<br>
&gt; &gt; I actually tried compiling hypre 2.6b using windows. I can&#39;t remember which version I&#39;m using (Vs2005, 2008) but I followed the instructions carefully and it worked. Compiling, linking in IDE are also ok. However, only the C code work. The fortran code just can&#39;t work, even after much help from the developers.<br>

&gt; &gt;<br>
&gt; &gt; Only the 2.6b version works with windows. However, I have not tried using both hypre and PETSc in windows.<br>
&gt; &gt; Thank you very much and have a nice day!<br>
&gt; &gt;<br>
&gt; &gt; Yours sincerely,<br>
&gt; &gt;<br>
&gt; &gt; Wee-Beng Tay<br>
&gt; &gt;<br>
&gt; &gt; On 7/26/2010 5:12 PM, Matthew Knepley wrote:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; This is what we mean when we say that Hypre does not support Windows. It really doesn&#39;t. You<br>
&gt; &gt;&gt; can try mailing their list, but I do not anticipate a response other than &quot;We do not support Windows&quot;.<br>
&gt; &gt;&gt; The build system is completely broken for this platform, as you have experienced. So, my conclusion<br>
&gt; &gt;&gt; would be to<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;   a) switch packages to something that does support Windows<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; or<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;   b) switch platforms to something that Hypre supports<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;   Thanks,<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;      Matt<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; On Mon, Jul 26, 2010 at 6:40 PM, Dominik Szczerba &lt;<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>&gt; wrote:<br>
&gt; &gt;&gt; I just reinstalled MPICH to C: (and not the default location Program FIles). I also followed Barry and added --with-cxx=&quot;win32fe cl&quot;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; 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 &#39;cl&#39; was used for compilation. It failed to link (*.lib not found) as *.a so I renamed it to libHYPRE.lib. Now the error is:<br>

&gt; &gt;&gt;<br>
&gt; &gt;&gt; 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<br>
&gt; &gt;&gt; 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<br>
&gt; &gt;&gt; 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<br>
&gt; &gt;&gt; ygdrive/c/Users/Dominik/Programs/petsc-3.1-p3/win64-msvc-release/lib -lf2cblas Ws2_32.lib<br>
&gt; &gt;&gt; sh: C:\Users\Dominik\Programs\HYPRE-~1.0B\src\hypre\lib\libHYPRE.lib : warning LNK4003: invalid library format; library ignored<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; I configured with:<br>
&gt; &gt;&gt; --with-mpi-dir=/cygdrive/c/MPICH2/ --with-hypre-dir=/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; but:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; $ ls -la /cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/lib<br>
&gt; &gt;&gt; total 8624<br>
&gt; &gt;&gt; drwxr-xr-x+ 1 Dominik None       0 2010-07-26 10:17 .<br>
&gt; &gt;&gt; drwxr-xr-x+ 1 Dominik None       0 2010-07-23 23:07 ..<br>
&gt; &gt;&gt; -rw-r--r--+ 1 Dominik None 8830476 2010-07-23 23:13 libHYPRE.lib<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; How can I go on from here?<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Regards,<br>
&gt; &gt;&gt; Dominik<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; On Sun, Jul 25, 2010 at 11:10 PM, Dominik Szczerba &lt;<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>&gt; wrote:<br>
&gt; &gt;&gt; Hi,<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; I am able to build petsc-3.1-p3 on Windows 7 64bit using native compiler (MSVC 2008) with:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; ./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=&#39;win32fe cl&#39; --with-fc=0<br>

&gt; &gt;&gt;<br>
&gt; &gt;&gt; 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:<br>

&gt; &gt;&gt;<br>
&gt; &gt;&gt; --with-hypre-dir=/cygdrive/c/Users/Dominik/Programs/hypre-2.6.0b/src/hypre/<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; but the configuration fails with:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; *******************************************************************************<br>
&gt; &gt;&gt;          UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log for details):<br>
&gt; &gt;&gt; -------------------------------------------------------------------------------<br>
&gt; &gt;&gt; C++ error! mpi.h could not be located at: [&#39;/cygdrive/c/Program Files/MPICH2/include&#39;]<br>
&gt; &gt;&gt; *******************************************************************************<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; This error is clearly wrong as:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; $ ls -la &#39;/cygdrive/c/Program Files/MPICH2/include&#39;<br>
&gt; &gt;&gt; total 309<br>
&gt; &gt;&gt; drwx------+ 1 SYSTEM SYSTEM  4096 2010-07-21 15:54 .<br>
&gt; &gt;&gt; drwx------+ 1 SYSTEM SYSTEM  4096 2010-07-21 15:54 ..<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  4776 2007-11-02 15:50 clog_commset.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM   696 2007-11-02 15:50 clog_const.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM   731 2010-02-22 16:22 clog_inttypes.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  1272 2007-11-02 15:50 clog_uuid.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM   437 2007-11-02 15:50 mpe.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 11021 2008-01-28 13:59 mpe_log.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  1833 2007-11-02 15:50 mpe_logf.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  1159 2007-11-02 15:50 mpe_misc.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 55623 2010-02-22 16:22 mpi.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  2439 2010-02-22 17:11 mpi.mod<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 14731 2010-02-22 17:11 mpi_base.mod<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 35003 2010-02-22 17:11 mpi_constants.mod<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM  8417 2010-02-22 17:11 mpi_sizeofs.mod<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 97301 2010-02-22 16:22 mpicxx.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 18610 2010-02-22 16:22 mpif.h<br>
&gt; &gt;&gt; -rwx------+ 1 SYSTEM SYSTEM 16765 2010-02-22 16:22 mpio.h<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Inspecting the log file shows:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Executing: g++ -c -o conftest.o  -Wall -Wwrite-strings -Wno-strict-aliasing -O    -I/cygdrive/c/Program\ Files/MPICH2/include conftest.cc<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; I think the error is in the white space in &quot;Program Files&quot;. 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.<br>

&gt; &gt;&gt;<br>
&gt; &gt;&gt; I am sending the log to the maintainters, just in case, because I saw more errors there too.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Any help is greatly appreciated.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Regards,<br>
&gt; &gt;&gt; Dominik<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; --<br>
&gt; &gt;&gt; What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
&gt; &gt;&gt; -- Norbert Wiener<br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
<br>
</div></div></blockquote></div><br>