I found out that the permissions in my working directory were out of whack, which wasn't allowing the script to be run. I've fixed this and everything works flawlessly. Thanks Jed for the CMake scripts.<br><br><div class="gmail_quote">

On Mon, Jul 30, 2012 at 7:46 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="gmail_quote"><div class="im">On Mon, Jul 30, 2012 at 4:27 PM, Hadayat Seddiqi <span dir="ltr"><<a href="mailto:hadsed@gmail.com" target="_blank">hadsed@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


Hi Jed,<div><br></div><div>Apparently it's failing to run the test script (it says PETSC_EXECUTABLE_RUNS was not set). If I'm correct, the output of the failed test script should be in CMakeFiles/CMakeError.log . Looking at this, it gives me the following:</div>




<div><br></div><div><div>In file included from /home/h37/petsc-3.2-p7/include/petscis.h:7,</div><div>                 from /home/h37/petsc-3.2-p7/include/petscvec.h:9,</div><div>                 from /home/h37/petsc-3.2-p7/include/petscmat.h:6,</div>




<div>                 from /home/h37/petsc-3.2-p7/include/petscdm.h:6,</div><div>                 from /home/h37/petsc-3.2-p7/include/petscpc.h:6,</div><div>                 from /home/h37/petsc-3.2-p7/include/petscksp.h:6,</div>




<div>                 from /home/h37/petsc-3.2-p7/include/petscsnes.h:6,</div><div>                 from /home/h37/petsc-3.2-p7/include/petscts.h:7,</div><div>                 from /home/h37/sapphiresimulator/FOP/build/CMakeFiles/CMakeTmp/src.c:3:</div>




<div>/home/h37/petsc-3.2-p7/include/petscsys.h:105:17: error: mpi.h: No such file or director</div></div></blockquote><div><br></div></div><div>You may need to set the correct MPI wrapper compiler. If that doesn't work, can you send the full Output and Error files to petsc-maint?</div>

<div class="im">
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><br></div><div>And of course a lot more afterwards. How is it possible that it cannot find MPI, even though all of the test cases and example/tutorial programs worked with mpi?</div>




<div><br></div><div>I realize it's probably bad practice, but I also thought I would try to disable this flag by forcing PETSC_EXECUTABLE_RUNS to "YES", but it doesn't seem to work. I tried commenting out if (${${run}}) and the corresponding endif, as well as moving it outside the macro. I feel rather silly about this, but I just cannot get it to work.</div>




<div><br></div><div>Thanks,</div><div><br></div><div>Had</div><div><div><br><div class="gmail_quote">On Mon, Jul 30, 2012 at 5:36 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div>On Mon, Jul 30, 2012 at 4:19 PM, Hadayat Seddiqi <span dir="ltr"><<a href="mailto:hadsed@gmail.com" target="_blank">hadsed@gmail.com</a>></span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello,<div><br></div><div>I'm working on a large numerical software project whose framework has largely been developed already. We're using CMake to generate makefiles. I'm also using SLEPc (for full disclosure). The examples given by PETSc and SLEPc documentation require me to include makefiles, but I don't know of any straightforward way to command CMake to do this for me.</div>







<div><br></div><div>I have looked at the FAQ's link for the CMake question: <a href="https://github.com/jedbrown/dohp" target="_blank">https://github.com/jedbrown/dohp</a> But this seems very old, and in any case it doesn't exactly work. </div>





</blockquote><div><br></div></div><div>The CMake stuff is here.</div><div><br></div><div><a href="https://github.com/jedbrown/cmake-modules/" target="_blank">https://github.com/jedbrown/cmake-modules/</a></div><div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>I'm not an expert on CMake, so I couldn't say what was the causing the problem, but in the end it told me it could not find the PETSc libraries. It seemed to be rather complicated-- I know PETSc will be where I need it, so I don't need all the verification that it's there and everything works. I thought, with the benefit of more intimate knowledge of how PETSc runs, that someone could show a much simpler way (it seems to me that this ought to be the case).</div>





</blockquote><div><br></div></div><div>The problem is that there are lots of ways that things can "not work", so its important for the FindPETSc.cmake script to really try. Also, CMake insists on taking parameters in a different way (e.g. converting command-line flags to full paths).</div>





<div><br></div><div>Have you looked at the logs (CMakeFiles/CMake{Output,Error}.log</div><div><br></div><div>Here is more active package that uses the FindPETSc.cmake script</div><div><br></div><div><a href="https://github.com/pism/pism" target="_blank">https://github.com/pism/pism</a></div>





</div>
</blockquote></div><br></div></div></div>
</blockquote></div></div><br>
</blockquote></div><br>