CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Installation (https://www.cfd-online.com/Forums/openfoam-installation/)
-   -   missing vtf3.h BPatch.h papi.h (https://www.cfd-online.com/Forums/openfoam-installation/80787-missing-vtf3-h-bpatch-h-papi-h.html)

wyldckat July 20, 2012 11:59

OK, then there must be a conflict of MPI versions... what do these commands output:
Code:

mpirun --version
echo $FOAM_MPI
echo $PINC
echo $PLIBS
echo $MPI_ARCH_PATH


linch July 20, 2012 12:21

Hi,

sorry, I didn't notice your answer because of the new page.

Quote:

mpirun (Open MPI) 1.5.3
Quote:

echo $FOAM_MPI
openmpi-system
Quote:

echo $PINC
-I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread
Quote:

echo $PLIBS
-pthread -L/usr/lib/openmpi/lib -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl
Quote:

echo $MPI_ARCH_PATH
/usr/lib/openmpi
Best,
Ilya

wyldckat July 20, 2012 12:28

Hi Ilya,

OK, then the "LD_LIBRARY_PATH" variable must be contaminated - what does this output :confused::
Code:

echo $LD_LIBRARY_PATH
If you can see the "local/mpich" path appear somewhere in the middle of that variable, then that would be the reason for this whole problem!

Best regards,
Bruno

linch July 20, 2012 12:33

Hi,
here it comes:
Quote:

echo $LD_LIBRARY_PATH
/home/shevchuk/OpenFOAM/ThirdParty-2.1.x/platforms/linux64Gcc/paraview-3.12.0/lib/paraview-3.12:/home/shevchuk/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/openmpi-system:/home/shevchuk/OpenFOAM/ThirdParty-2.1.x/platforms/linux64GccDPOpt/lib/openmpi-system:/usr/lib/openmpi/lib:/home/shevchuk/OpenFOAM/shevchuk-2.1.x/platforms/linux64GccDPOpt/lib:/home/shevchuk/OpenFOAM/site/2.1.x/platforms/linux64GccDPOpt/lib:/home/shevchuk/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib:/home/shevchuk/OpenFOAM/ThirdParty-2.1.x/platforms/linux64GccDPOpt/lib:/home/shevchuk/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/dummy:/opt/intel/Compiler/11.1/069/lib/intel64:/usr/lib/:/usr/lib64/:/opt/intel/Compiler/11.1/069/lib/intel64/:/usr/local/mpich/lib/
You're right. How can I clean it?

Best regards,
Iyla

wyldckat July 20, 2012 13:13

Hi Ilya,

Took me a while to get back to you... OK, edit OpenFOAM's "etc/bashrc" file once again and search for these lines:
Code:

#- Clean LD_LIBRARY_PATH
cleaned=`$foamClean "$LD_LIBRARY_PATH"` && LD_LIBRARY_PATH="$cleaned"

Add below those two lines this new one:
Code:

cleaned=`$foamClean "$LD_LIBRARY_PATH" "/usr/local/mpich/lib/"` && LD_LIBRARY_PATH="$cleaned"
I think taking out the "intel64" paths is also a good idea, for which you can use instead this line (I hope I'm not mistaken on this one):
Code:

cleaned=`$foamClean "$LD_LIBRARY_PATH" "/usr/local/mpich/lib/:/opt/intel/Compiler/11.1/069/lib/intel64:/opt/intel/Compiler/11.1/069/lib/intel64/"` && LD_LIBRARY_PATH="$cleaned"
If it doesn't work, use spaces instead of ":".

Again, better start a new terminal. Rebuilding only "Pstream" is also a good idea, after you check if the variable mentioned before is cleaned.

If you still have problems, the environment variable "PATH" is also a suspect ;)

Best regards,
Bruno

linch July 20, 2012 13:43

Hi Bruno,

thanks a lot, step by step we are getting closer. After cleaning the LD_LIBRARY_PATH the error reduced to
Quote:

mpirun: error while loading shared libraries: libimf.so: cannot open shared object file: No such file or directory
Then I cleaned the PATH varible:
Quote:

cleaned=`$foamClean "$PATH" "/usr/local/mpich/bin"` && PATH="$cleaned"
cleaned=`$foamClean "$PATH" "/opt/intel/Compiler/11.1/069/bin/intel64"` && PATH="$cleaned"
But now there is no mpi-path left and mpirun can't be found any more :) Now we have to add the "right" PATH, don't we? But which one is the right one?

Best regards,
Ilya

wyldckat July 20, 2012 13:50

Do any of these appear:
Code:

which mpirun
which mpicc
ls -l `which mpirun`
ls -l `which mpicc`
mpirun --version
mpicc --help

Number 3 and 4 might reveal if there is a symbolic link.

If not, then try building again OpenFOAM's own Open-MPI 1.5.3 ;)
Don't forget to switch back from SYSTEMOPENMPI to OPENMPI in "etc/bashrc".

linch July 20, 2012 13:55

mpirun -> negative; but mpicc (2,4,6) is still there.
Quote:

ls -l `which mpicc`
lrwxrwxrwx 1 root root 23 3. Aug 2011 /usr/bin/mpicc -> /etc/alternatives/mpicc
Is it a good or a bad news? :) Should I still try to recompile the OF-internal openmpi?

wyldckat July 20, 2012 13:58

Try these again, still with the SYSTEMOPENMPI:
Quote:

Originally Posted by wyldckat (Post 372636)
OK, then there must be a conflict of MPI versions... what do these commands output:
Code:

mpirun --version
echo $FOAM_MPI
echo $PINC
echo $PLIBS
echo $MPI_ARCH_PATH


edit: Additionally, if you can:
Code:

sudo update-alternatives --config mpirun
Check if there are other options already installed in the system.

linch July 20, 2012 14:03

Ok, here it is:

Quote:

mpirun --version
bash: mpirun: command not found.

$ echo $FOAM_MPI
openmpi-system

$ echo $PINC
-I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread

$ echo $PLIBS
-pthread -L/usr/lib/openmpi/lib -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl

$ echo $MPI_ARCH_PATH
/usr/lib/openmpi

wyldckat July 20, 2012 14:05

You can also check:
Code:

update-alternatives --config mpirun
And see also:
Code:

ls -l /usr/bin/mpirun.*

linch July 20, 2012 14:10

it doesn't look good:
Quote:

update-alternatives --config mpirun
update-alternatives: error: no alternatives for mpirun.
Quote:

ls -l /usr/bin/mpirun.*
ls: /usr/bin/mpirun.* not found

wyldckat July 20, 2012 14:12

Then switch back to the normal OPENMPI option in OpenFOAM's etc/bashrc file and start a new terminal.

Then:
Code:

foam3rdParty
./Allwmake > make.log 2>&1

Let's see if Open-MPI 1.5.3 will play nice this time around :)

linch July 20, 2012 14:18

1 Attachment(s)
Unfortunately not. There are still the same errors.

wyldckat July 20, 2012 14:22

I think it is mpicc's fault here... but I don't know how to disable it without removing it :(

By the way, does this output anything:
Code:

echo $GREP_OPTIONS
In the mean time I'm going to test on the VM how to add mpicc to the mix to see if it bungles something up...

linch July 20, 2012 14:27

Quote:

Originally Posted by wyldckat (Post 372676)
By the way, does this output anything:
Code:

echo $GREP_OPTIONS

nope, nothing there

wyldckat July 20, 2012 15:34

Hi Ilya,

It's taking me a while in trying to reproduce the same error. And the "debian-security" server seems to be offline for a couple of minutes to help...

I did find something interesting: seems that you might have installed on your machine the package "mpi-default-dev" but not the "mpi-default-bin". Without the second one, it's not possible to use the system Open-MPI properly. To check if they are installed:
Code:

dpkg-query -s mpi-default-bin
dpkg-query -s mpi-default-dev

If both commands provide the line:
Code:

Status: install ok installed
then something strange is going on... if only one appears, then that's why you have half of it.

This command can help figure out if there are other surrounding packages:
Code:

dpkg-query -W "*mpi*"
Then use the "-s" for each package to confirm if they are installed. Or simply use Synaptic as root:
Code:

synaptic
I'll make another post when I have more information!

Best regards,
Bruno

wyldckat July 20, 2012 17:40

Hi Ilya,

And I'm out of ideas. I haven't been able to reproduce the problem you're having. My guess would be that the other application to blame could be the Icc compiler that is installed in your machine.

Nonetheless, my suggestion is to:
  1. Make sure to install those two packages:
    Code:

    sudo apt-get install mpi-default-bin mpi-default-dev
    They will make sure Open-MPI is properly installed. You'll need to reboot the machine.
  2. Switch to SYSTEMOPENMPI in OpenFOAM's "etc/bashrc" file.
  3. Start a new terminal and try again building Pstream!
Best regards,
Bruno

linch July 20, 2012 18:17

Hi Bruno,

first thanks a lot for the time you spent trying to figure out, what's goin on here.

None of the mpi-default-... packages is installed. Unfortunately though, I don't even have the sudo privileges, so I'll have to beg our admins at Monday to install them.

I wish you a nice weekend!
Ilya

wyldckat July 20, 2012 19:30

Hi Ilya,

Maybe instead of begging for installing those packages, then perhaps it would be best to request more information about what's installed in the machine and also ask which packages could be affecting OpenFOAM's proper installation!

Over this long attempt to get things running, we've found that:
  • The system's mpicc seems to be from one package.
  • The system's mpirun is somewhat elusive, because sometimes it's present, others seems to be missing... although I might not be remembering this one properly.
  • Intel's compiler is also in sight, which could either be good or bad.
    • I wonder if Intel MPI is installed in there somewhere as well!?
Knowing more about what's installed would help, because with the default packages, I don't have any problems whatsoever!

Nonetheless, in the end, you might have to switch to building with Icc instead of Gcc, which OpenFOAM supports, as long as the Icc version isn't too old...

edit: and have a nice weekend as well :)

Best regards,
Bruno


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