View Issue Details

IDProjectCategoryView StatusLast Update
0002481ThirdPartyBugpublic2017-03-10 20:50
Reporterroland_shi Assigned Tochris  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionno change required 
PlatformRed Hat LINUXOSRed Hat LINUXOS Version6.8 x86_84
Summary0002481: I want to use ParaView 5.0.1 with openmpi(openfoam) to compile
Description./makeParaView -qmake $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/qt-4.8.6/bin/qmake -mpi -python > log.makePV 2>&1

I got the error:
/usr/lib/../lib64/libmpi.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [lib/libvtkVPIC-pv5.0.so.1] Error 1
make[1]: *** [VTK/ThirdParty/VPIC/CMakeFiles/VPIC.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
TagsNo tags attached.

Activities

roland_shi

2017-03-01 09:08

reporter  

log.makePV (113,323 bytes)

wyldckat

2017-03-02 23:52

updater   ~0007849

I need to know the following details, in order to diagnose what is happening:

 1. What do the following 2 commands give you when you have the OpenFOAM 4.1 environment activated in the shell (terminal/console window)?

    gcc --version
    g++ --version


 2. What do the following 3 commands give you?

    mpirun --version
    which mpirun
    echo $WM_MPLIB

roland_shi

2017-03-03 02:24

reporter   ~0007851

hi, wyldchat,thanks for your help.
[admin@mgmt root]$ gcc --version
gcc (OpenFOAM) 4.8.5
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[admin@mgmt root]$ g++ --version
g++ (OpenFOAM) 4.8.5
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

You have new mail in /var/spool/mail/root

You have new mail in /var/spool/mail/root
[admin@mgmt root]$ mpirun --version
mpirun (Open MPI) 2.0.1

Report bugs to http://www.open-mpi.org/community/help/

[admin@mgmt root]$ which mpirun
/usr/bin/mpirun

[admin@mgmt root]$ echo $WM_MPLIB
OPENMPI

wyldckat

2017-03-05 15:02

updater   ~0007858

There seems to be 2 major problems with what you're trying to do:

 1. Open-MPI 2.0 was released roughly 3 months after ParaView 5.0.1, therefore it is unlikely it will work with it. And I'm not sure if it will work with OpenFOAM 4.x or not.


 2. There seems to be a rather critical installation problem with how Open-MPI 2.0.1 was installed in the machine that you are using. Try checking what the following command gives you:

  ls -l /usr/lib/../lib64/libmpi.a

My guess is that the command either reports that the file is of zero size or that it's a broken symbolic link. Either that or Open-MPI was built as a static library only, which is not usable in the current build.

roland_shi

2017-03-06 01:30

reporter   ~0007860

Hi, wyldchat, thanks for your kindly support. if the Open-MPI 2.0 is not support the OpenFOAM 4.1 or 4.x. I just want to build it with the OpenFOAM's openmpi,that is the "ThirdParty's openmpi". how should I do? or whiich version of OpenFOAM can work normally? thanks a lot.

wyldckat

2017-03-06 20:12

updater   ~0007861

1. Edit the file "OpenFOAM-4.1/etc/bashrc".

2. Change:

     export WM_MPLIB=SYSTEMOPENMPI

   to:

     export WM_MPLIB=OPENMPI

3. Save the file and close the editor.

4. Update the shell environment by running:

    wmRefresh

5. Run OpenFOAM's Allwmake once again, which will build the new components:

    cd $WM_PROJECT_DIR
    ./Allwmake -j > log.make 2>&1

6. Then try building ParaView once again.

roland_shi

2017-03-07 06:58

reporter   ~0007863

Hi, wyldchat, I use the steps you gave me ,when I did the 5 steps, I got the error: Compiling enabled on 4 cores
make: Nothing to be done for `all'.

========================================
Start ThirdParty Allwmake
========================================

========================================
Build MPI libraries if required

+ cd openmpi-1.10.2
/home/admin/OpenFOAM/ThirdParty-4.1/Allwmake: line 78: cd: openmpi-1.10.2: No such file or directory
+ exit 1

how should I do ? thanks.

wyldckat

2017-03-07 20:45

updater   ~0007866

There are two references already available by the OpenFOAM Foundation:

 1. The page "OpenFOAM Repo: 4. Third Party Software": https://openfoam.org/download/source/third-party-software/ - provides an indication of how to get and build the 3rd-party software. It refers to the next item...

 2. There is a README.org file in the "ThirdParty-4.1" folder, which states the download link for the "openmpi-1.10.2" package. You can see this file online as well: https://github.com/OpenFOAM/ThirdParty-4.x/blob/master/README.org


Essentially you need to run the following commands:

    cd $WM_THIRD_PARTY_DIR
    wget http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2.tar.bz2
    tar -xf openmpi-1.10.2.tar.bz2

    cd $WM_PROJECT_DIR
    ./Allwmake -j > log.make 2>&1

The second command will do the download automatically. If it fails to download, you will need to download the file manually and place it in the "ThirdParty-4.1" folder.

roland_shi

2017-03-09 03:35

reporter   ~0007867

Hi, wyldchat, thanks for your help.
now when I use the command: paraFoam, it can bootup but shows error codes.like the fellow:
[admin@mgmt ~]$ paraFoam
WARN file does not exist:
    ./system/controlDict
    ./system/fvSchemes
    ./system/fvSolution
Cannot locate OpenFOAM-format case files
Would you like to open ParaView anyway <Y|

n>:y
what should I do?thanks.

roland_shi

2017-03-09 03:45

reporter   ~0007868

and when I use the motorBike's example,it shows error like fellow:
[admin@mgmt motorBike]$ paraFoam
Created temporary 'motorBike.OpenFOAM'
ERROR: In /home/admin/OpenFOAM/OpenFOAM-4.1/applications/utilities/postProcessing/graphics/PVReaders/PVFoamReader/PVFoamReader/vtkPVFoamReader.cxx, line 216
vtkPVFoamReader (0x3bf9ac0): could not find valid OpenFOAM mesh


ERROR: In /home/admin/OpenFOAM/ThirdParty-4.1/ParaView-5.0.1/VTK/Common/ExecutionModel/vtkExecutive.cxx, line 784
vtkPVCompositeDataPipeline (0x3a9a020): Algorithm vtkPVFoamReader(0x3bf9ac0) returned failure for request: vtkInformation (0x3a9a920)
  Debug: Off
  Modified Time: 161269
  Reference Count: 1
  Registered Events: (none)
  Request: REQUEST_INFORMATION
  ALGORITHM_AFTER_FORWARD: 1
  FORWARD_DIRECTION: 0




ERROR: In /home/admin/OpenFOAM/OpenFOAM-4.1/applications/utilities/postProcessing/graphics/PVReaders/PVFoamReade

wyldckat

2017-03-09 23:27

updater   ~0007889

@roland_shi: The next step is already instructed in the "Getting Started" section of the official installation instructions: https://openfoam.org/download/4-1-source/#getting-started

wyldckat

2017-03-10 00:01

updater   ~0007890

@Chris: What I can gather from the steps taken above to debug this issue, are the following points that could be (easily) improved in the existing documentation for installation:

  1- The simplest detail is indicating in the release notes - https://openfoam.org/release/4-0/ - which were the tested Open-MPI versions, given that GCC/ICC/Clang versions are mentioned there. Or at the very least, point people to the README files at the ThirdParty folder: https://github.com/OpenFOAM/ThirdParty-4.x/blob/master/README.org
     The reason is simple: Open-MPI 2.0 is out and I haven't confirmed it yet myself, but from the output above, it's unlikely to be compatible out-of-the-box with OpenFOAM and ParaView.


  2- I feel the need to have a link to the release notes from each version download page, e.g. here: https://openfoam.org/download/4-1-source/ - I can't find an easy link back to the release notes, so that I could have used it here during this debugging session. For example, in section "Tested Platforms", after the list, add a description with the link back to the release notes... something like:

         For more details on the tested compilers and third-party software needed for building OpenFOAM, please refer to the Release Notes ( https://openfoam.org/release/4-1/ ).


     Although if 3rd-party compatibilities are pointed towards the README file, then the same should be done here as well.


  3- At the risk of making people feel a bit dumb, it would be helpful to have a paragraph in the "ThirdParty-*/README" file that states what people should do with the downloaded packages. In other words, tell them that they should download the package and unpack it inside the "ThirdParty-*" folder (directory)... e.g.:

         Versions and locations to download the third party packages

           Take note of the packages that are needed to download, download them into this ThirdParty directory and then unpack them here. For example, to download and unpack GCC 4.8.5, run the following commands:

               wget -P download http://ftpmirror.gnu.org/gcc/gcc-4.8.5/gcc-4.8.5.tar.bz2
               tar -xf download/gcc-4.8.5.tar.bz2


  4- In this page: https://openfoam.org/download/source/setting-environment/ - there should be at least a brief mention that the files "etc/bashrc" and "etc/cshrc" can be configured to choose the settings most relevant to the user's own system. See comment ~0007861 above for an example.
     In addition, please also refer that the files within "etc/config.*" can be further configured to one's needs. This will likely be the standard for at least the next few years, regardless of how many automation/helper scripts we might add to the mix.

roland_shi

2017-03-10 03:21

reporter   ~0007891

Hi, wyldchat, thanks a lot. but the paraFoam's menu has error code.
errorcode.jpg (129,407 bytes)   
errorcode.jpg (129,407 bytes)   

roland_shi

2017-03-10 03:23

reporter   ~0007892

please check the attachment,thanks.

chris

2017-03-10 09:23

manager   ~0007902

Installation and compilation instructions need to be clear and concise. For the people who are OK with the instructions, adding more information and more cross-referencing only makes compilation more difficult.

In relation to the questions:
1. The version of OpenMPI was not mentioned because many versions work and there have not been any issues for a long time. We don't generally test multiple versions, so we cannot say definitively "v1.x.x - v1.x.x". When you don't mention a version, people end up compiling it unnecessarily which causes more issues than it resolves.
2. OK
3. Ideally we want to use system libraries and the setup and instructions for ThirdParty leans much more in that direction these days. Most people do not download anything so you cannot write instructions like "Take note of the packages that are needed to download...".

The question that needed to be asked in this post is "Why is the system MPI (1.10-ish) of RedHat 6.8 not being used here?" Why install 2.0.1? What about the 2.0.2 "bug-fix release"?

4. OK, but we recognise that compilation can be difficult, particularly on systems like RedHat 6.8 which lag behind with versions etc. So some sys-admin skill is required, e.g. understanding what source files and environment variables are, and recognising they can be edited.

henry

2017-03-10 15:07

manager   ~0007915

@wyldckat: I built OpenFOAM-dev with OpenMPI-2.0.2 without any problems at all; I will make this the default OpenMPI version in ThirdParty-dev shortly.

henry

2017-03-10 20:50

manager   ~0007916

I built and tested OpenFOAM-dev and paraview-5.0.1 with OpenMPI-2.0.2 and there are absolutely no issues, no warnings, no compilation problems, no run problems.
There is no need to change the documentation in anyway to cover OpenMPI-2.0.2.

This is a user-support request rather than a bug-report.

Issue History

Date Modified Username Field Change
2017-03-01 09:08 roland_shi New Issue
2017-03-01 09:08 roland_shi File Added: log.makePV
2017-03-02 23:45 wyldckat Priority high => normal
2017-03-02 23:45 wyldckat Category Contribution => Bug
2017-03-02 23:45 wyldckat Summary I want to use OpenFOAM 4.1 with openmpi(openfoam) to complie => I want to use ParaView 5.0.1 with openmpi(openfoam) to compile
2017-03-02 23:52 wyldckat Note Added: 0007849
2017-03-03 02:24 roland_shi Note Added: 0007851
2017-03-05 15:02 wyldckat Note Added: 0007858
2017-03-06 01:30 roland_shi Note Added: 0007860
2017-03-06 20:12 wyldckat Note Added: 0007861
2017-03-07 06:58 roland_shi Note Added: 0007863
2017-03-07 20:45 wyldckat Note Added: 0007866
2017-03-09 03:35 roland_shi Note Added: 0007867
2017-03-09 03:45 roland_shi Note Added: 0007868
2017-03-09 23:27 wyldckat Note Added: 0007889
2017-03-10 00:01 wyldckat Note Added: 0007890
2017-03-10 00:02 wyldckat Assigned To => chris
2017-03-10 00:02 wyldckat Status new => assigned
2017-03-10 03:21 roland_shi File Added: errorcode.jpg
2017-03-10 03:21 roland_shi Note Added: 0007891
2017-03-10 03:23 roland_shi Note Added: 0007892
2017-03-10 09:23 chris Note Added: 0007902
2017-03-10 15:07 henry Note Added: 0007915
2017-03-10 20:50 henry Status assigned => closed
2017-03-10 20:50 henry Resolution open => no change required
2017-03-10 20:50 henry Note Added: 0007916