CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Installation (https://www.cfd-online.com/Forums/openfoam-installation/)
-   -   [OpenFOAM.org] OpenFOAM 6 compilation - Pstream target directory missing (https://www.cfd-online.com/Forums/openfoam-installation/203998-openfoam-6-compilation-pstream-target-directory-missing.html)

Artur July 11, 2018 12:29

OpenFOAM 6 compilation - Pstream target directory missing
 
Hi All,

I've just finished compiling OF6 on our supercomputer and encountered a strange issue: when compiling the Pstream/mpi and parallel/decompose shared objects the compilation script complained that it could not find the build directories for them, namely:

Code:

$WM_PROJECT_DIR/platforms/linux64IccDPInt32OptSYSTEMOPENMPI/src/Pstream/mpi
$WM_PROJECT_DIR/platforms/linux64IccDPInt32OptSYSTEMOPENMPI/src/parallel/decompose/ptscotchDecomp

When I created the directories manually and resumed compilation it completed without any issues and works just fine now that it's done. I had a look through the Allwmake scripts for the two libraries but could not see any obvious issues there. Thought I'd flag it up here in case someone else encounters this problem. If you have any ideas what I could have potentially messed up, I'd be happy to hear those as well.

All the best,

Artur

wyldckat August 17, 2018 14:49

Greetings Artur,

I'm a bit late to answer to your question, but I am curious as to what happened.

From what I can figure out, there may have been a breaking point in communication between shells, namely:
  1. The Allwmake scripts use "/bin/sh", which can be anything that was defined by default on your supercomputer, e.g. dash, bash or even maybe csh?
  2. The wmake script uses "/bin/bash", which is possibly not the same as "/bin/sh", hence the miscommunication.
One way to diagnose what happened is to get a complete output of wmake's run when called from either one of those two Allwmake scripts. So if still have a chance to diagnose this, then follow these steps:
  1. Edit the file "OpenFOAM-6/wmake/wmake".
  2. In the very first line, append the option "-x":
    Code:

    #!/bin/bash -x
  3. Save and close the file.
  4. Go to the folder for "Pstream" and rebuild:
    Code:

    cd $FOAM_SRC/Pstream
    ./Allwclean
    ./Allwmake > log.make 2>&1

  5. The log file "log.make" should now contain a full trace of what wmake tried to do.
My best guess is that the variable "WM_OPTIONS" had two identities within wmake:
  • The exported one, has the old value "linux64IccDPInt32Opt".
  • The non-exported one, that was set by Allwmake, has "linux64IccDPInt32OptSYSTEMOPENMPI".
If somehow the "mkdir" command used the old name instead of the new one, that would explain the problem.


Beyond this, if you are no longer able to try and reproduce this issue, please let us know which Linux Distribution and version you are using the supercomputer, because with luck we can reproduce this issue with a virtual machine.

Best regards,
Bruno


All times are GMT -4. The time now is 20:39.