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 Installation in Redhat Enterprise linux 5 (https://www.cfd-online.com/Forums/openfoam-installation/73629-openfoam-installation-redhat-enterprise-linux-5-a.html)

flowris April 28, 2011 04:44

OK, we solved the problem by adding a line to the run.sge to source our gcc-4.5.1.

gschaider April 28, 2011 08:08

Quote:

Originally Posted by flowris (Post 305381)
Thank you.

I am not sure my libstdc++ is too old, since I used gcc-4.5.1.

That's the one you built it with. The binaries produced need a corresponding dynamic library and that is not present on your cluster (or it can't find it)

Quote:

Originally Posted by flowris (Post 305381)
What I do not understand is the following : Both simulations I describe above were tried on the same cluster, with CentOS release 5.4 (Final). When I type the commands one by one, it works, but when I use the run.sge, the troubles come.

I added the lines to run.sge. echo $LD_LIBRARY_PATH gives
Code:

/home/jmatthei/OpenFOAM/ThirdParty-1.7.x/platforms/linux64Gcc/paraview-3.8.0/lib/paraview-3.8:/home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/openmpi-1.4.1:/home/jmatthei/OpenFOAM/ThirdParty-1.7.x/platforms/linux64Gcc/openmpi-1.4.1/lib:/home/jmatthei/OpenFOAM/jmatthei-1.7.x/lib/linux64GccDPOpt:/home/jmatthei/OpenFOAM/site/1.7.x/lib/linux64GccDPOpt:/home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt:/home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/dummy:/opt/gridengine/lib/lx26-amd64:/usr/lib64/openmpi/1.4.1-gcc/lib:/share/apps/intel/lib/intel64:/share/apps/intel/ipp/em64t/sharedlib:/share/apps/intel/mkl/lib/em64t
ldd icoFoam gives an empty output, or when I type it directly in the terminal it gives
ldd: ./icoFoam: No such file or directory

So I went into OpenFOAM/OpenFOAM-1.7.x/applications/bin/linux64GccDPOpt and then typed ldd icoFoam, which gave

Code:

    libfiniteVolume.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libfiniteVolume.so (0x00002ae2b8f96000)
    libOpenFOAM.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libOpenFOAM.so (0x00002ae2b9fd1000)
    libdl.so.2 => /lib64/libdl.so.2 (0x0000003db7200000)
    libstdc++.so.6 => /share/apps/gcc-4.5.1/lib64/libstdc++.so.6 (0x00002ae2ba660000)
    libm.so.6 => /lib64/libm.so.6 (0x0000003db6e00000)
    libgcc_s.so.1 => /share/apps/gcc-4.5.1/lib64/libgcc_s.so.1 (0x00002ae2ba966000)
    libc.so.6 => /lib64/libc.so.6 (0x0000003db6a00000)
    libPstream.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/openmpi-1.4.1/libPstream.so (0x00002ae2bab7b000)
    libtriSurface.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libtriSurface.so (0x00002ae2bad85000)
    libmeshTools.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libmeshTools.so (0x00002ae2baffd000)
    libz.so.1 => /usr/lib64/libz.so.1 (0x0000003db7a00000)
    /lib64/ld-linux-x86-64.so.2 (0x0000003db6600000)
    libmpi.so.0 => /home/jmatthei/OpenFOAM/ThirdParty-1.7.x/platforms/linux64Gcc/openmpi-1.4.1/lib/libmpi.so.0 (0x00002ae2bb457000)
    libdecompositionMethods.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libdecompositionMethods.so (0x00002ae2bb6f9000)
    liblagrangian.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/liblagrangian.so (0x00002ae2bb919000)
    libopen-rte.so.0 => /home/jmatthei/OpenFOAM/ThirdParty-1.7.x/platforms/linux64Gcc/openmpi-1.4.1/lib/libopen-rte.so.0 (0x00002ae2bbb37000)
    libopen-pal.so.0 => /home/jmatthei/OpenFOAM/ThirdParty-1.7.x/platforms/linux64Gcc/openmpi-1.4.1/lib/libopen-pal.so.0 (0x00002ae2bbd86000)
    libnsl.so.1 => /lib64/libnsl.so.1 (0x0000003db9a00000)
    libutil.so.1 => /lib64/libutil.so.1 (0x0000003dc3400000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003db7600000)
    libscotchDecomp.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libscotchDecomp.so (0x00002ae2bbfff000)
    libmetisDecomp.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libmetisDecomp.so (0x00002ae2bc20c000)
    libparMetisDecomp.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/openmpi-1.4.1/libparMetisDecomp.so (0x00002ae2bc41b000)
    libscotch.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libscotch.so (0x00002ae2bc631000)
    libscotcherrexit.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libscotcherrexit.so (0x00002ae2bc891000)
    libmetis.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libmetis.so (0x00002ae2bca92000)
    libGKlib.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/libGKlib.so (0x00002ae2bcce5000)
    libmetis-parmetis.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/openmpi-1.4.1/libmetis-parmetis.so (0x00002ae2bcf00000)
    libparmetis.so => /home/jmatthei/OpenFOAM/OpenFOAM-1.7.x/lib/linux64GccDPOpt/openmpi-1.4.1/libparmetis.so (0x00002ae2bd14a000)

I am not sure about what this means, but I think the problem is not in libstdc++, since for both the library is in /share/apps/gcc-4.5.1/lib64/libstdc++.so.6.

Don't you think the problem is somewhere in the run.sge file?

No idea and frankly I don't have the patience to work out other peoples DLL-mixups. Log into the cluster (first by ssh then with qlogin) start your script by hand and see when it stops working. Let your script output all environment variables with "export" and see what is the difference. Good luck

makaveli_lcf October 25, 2011 09:03

Hi! I need to build 1.7.x on the RHEL-5. But it seems that now only 2.0.x 1.6.x-dev are left of the centFOAM repository. How could I install 1.7.x?

makaveli_lcf October 25, 2011 09:14

For 1.6-ext installation got following error:

Code:

[smmplogin OpenFOAM$][smmplogin OpenFOAM$]./centFOAM.py --OF16
All packages will be downloaded to this folder
 and extracted to /SAS/home/alexanderv/centFOAM/
Press enter to continue
installing OpenFOAM-1.6-ext to /SAS/home/alexanderv/centFOAM//OpenFOAM/OpenFOAM-1.6-ext
Folder exists
Already downloaded OpenFOAM-1.6-ext.tar.gz,skipping
Unpacking OpenFOAM-1.6-ext.tar.gz, might take a minut or two
Replacing foamInstall=/home/44792/centFoam/$WM_PROJECT with foamInstall=/SAS/home/alexanderv/centFOAM//$WM_PROJECT in file/SAS/home/alexanderv/centFOAM//OpenFOAM/OpenFOAM-1.6-ext/etc/bashrc
Traceback (most recent call last):
  File "./centFOAM.py", line 235, in ?
    main()   
  File "./centFOAM.py", line 230, in main
    installOpenFOAM(options.path, "1.6-ext", "OF16")
  File "./centFOAM.py", line 157, in installOpenFOAM
    replaceInLine(bashFile,"foamInstall=/home/44792/centFoam/$WM_PROJECT","foamInstall="+path+"/$WM_PROJECT")
  File "./centFOAM.py", line 20, in replaceInLine
    for line in fileinput.FileInput(file,inplace=1):
  File "/usr/lib64/python2.4/fileinput.py", line 231, in next
    line = self.readline()
  File "/usr/lib64/python2.4/fileinput.py", line 300, in readline
    os.rename(self._filename, self._backupfilename)
OSError: [Errno 2] No such file or directory


makaveli_lcf October 25, 2011 09:41

Found a problem:
OF20 extracts everything to $HOME/centFOAM/OpenFOAM-2.0.x
OF16 to $HOME/centFOAM/OpenFOAM/OpenFOAM-1.6-ext

Rebecca513 October 28, 2011 10:50

Dear Bruno,

I am using CentOS Linux release 6.0 (Final), and trying to install OpenFOAM.

I tried to install centFOAM, though it is supposed to be used for 5.x. Anyway, the installation didn't give any error, but when I tried to use icoFoam, it says that the command is not found. I guess the installation failed after all.

I wonder if you could give me some suggestions as how I should proceed to install OpenFOAM on my computer.

Thank you so much!

Best,

Hang

wyldckat October 28, 2011 14:04

Greetings Hang,

I haven't tried CentOS 6.0, but by what I just saw in distrowatch, you should have absolutely no problems in installing OpenFOAM 2.0.1 simply by following the instructions provided on the official OpenFOAM website... Well, at least after you manage to install all of the right system packages ;)

Anyway, CentOS 6.0 has gcc 4.4.4 ready to be used, without any need for further compiling of another Gcc version. So that's a nice head start that you already have over CentOS 5.x.

So, let's try this:
  1. Run Allwmake on OpenFOAM's 2.0.1 or 2.0.x main folder like this:
    Code:

    ./Allwmake > make.log 2>&1
  2. Open the file "make.log" with a text editor and replace any sensitive folder paths and usernames. Save and close the file.
  3. Then pack the file into a nice tarball:
    Code:

    tar -czf make.log.tar.gz make.log
  4. Then attach the newly created file "make.log.tar.gz" to your next post.
This way I can see what exactly is going on wrong.

Best regards,
Bruno

Rebecca513 October 28, 2011 16:35

1 Attachment(s)
Hi Bruno,

Thank you for the quick reply and step-by-step instruction. That is really what I need since I am quite new to both linux and OF.

The error given by the make.log is quite short, actually it is

./Allwmake: line 4: wmakeCheckPwd: command not found
Error: Current directory is not $WM_PROJECT_DIR
The environment variables are inconsistent with the installation.
Check the OpenFOAM entries in your dot-files and source them.

Now I am thinking maybe because I installed it as root, but not under the directory of root. But it seems that it is installed in the directory I want.

foamInstall=/home/hangdeng/centFOAM/$WM_PROJECT

I attached the bashrc file. If you could take a look.

Thank you so much for your help. I really appreciate it.

wyldckat October 29, 2011 05:01

Hi Hang,

OK, let's try changing the following lines:
  • foamCompiler=ThirdParty - change to system
  • export WM_COMPILER=Gcc45 - change to Gcc44
Now:
  1. Start a new terminal as root.
  2. Check what Gcc version the following command gives you:
    Code:

    gcc -v
    Hopefully it states that it's 4.4.4 or similar.
  3. Check if your environment has the right variables initiated:
    Code:

    export
    See if you can see the variables that were described in the previous "bashrc" file.
    1. If the variables aren't there, run:
      Code:

      source /home/hangdeng/centFOAM/OpenFOAM/OpenFOAM-2.0.x/etc/bashrc
    2. Check again if the environment is up and running.
  4. OK, now try running the command I wrote about in the previous post.
And that should do it. At least to figure out what else is missing :)

Best regards,
Bruno

Rebecca513 October 30, 2011 19:04

1 Attachment(s)
Hello Bruno,

Thank you for the reply. And sorry for the late response. Failed to come to the office as it was snowing quite a bit yesterday.

I did as you posted,
After running gcc -v
It gives

gcc version 4.4.4 20100726 (Red Hat 4.4.4-13) (GCC)

Also, I attached the make.log.

BTW, I was trying to play with the meshing packages in centFOAM since OF is not working, seems that other than engrid, gmsh and netgen are not working either. I am not sure whether it is caused by similar reasons. Anyway, I think I should let you know, in case such information is some sort of indicator to find out the problem.

Thank you!

wyldckat October 31, 2011 07:16

Hi Hang,

Mmmm, you're getting a particular problem to CentFOAM's presets. I advise you to put CentFOAM on the side for now and try things with the original OpenFOAM: http://www.openfoam.com/download/source.php

If you want to stick to CentFOAM, then edit the file "Allwmake" that is on the "ThirdParty-2.0.x" folder and comment out the lines that state something like this:
Code:

        # Infiniband support
        if [ -d /usr/local/ofed -a -d /usr/local/ofed/lib64 ]
        then
            configOpt="$configOpt --with-openib=/usr/local/ofed"
            configOpt="$configOpt --with-openib-libdir=/usr/local/ofed/lib64"
        fi

Then try again.

Best regards,
Bruno

Rebecca513 October 31, 2011 14:46

Hello Bruno,

Thank you!

The lines have already been commented out actually.

So I tried to compile OF following the link you posted.

I got OF work, at least some simple cases.

But I couldn't get ParaView compiled. I have already installed very new versions of QT and cmake, still, everytime I run 'makeParaView', it gives:

*** Error: cannot find qmake either at $QMAKE_PATH or in current $PATH

Do you have any idea why that happens.

Thank you!

Best,

Hang

Rebecca513 October 31, 2011 14:57

Sorry Bruno,

I take what I said back. It turned out that OF is not working. Also, it always gives command not found.

I have no idea why it works at first, then nothing...It is so frustrating...

wyldckat October 31, 2011 15:01

Hi Hang,

About your second post:
  • The make.log file might help me help you!?
  • Run:
    Code:

    echo $WM_PROJECT_DIR
    to see which version of OpenFOAM your current terminal is set to use.

OK, as for your post before that: where exactly did you install Qt and CMake? Were they installed by using the package manager that comes with CentOS?

If you installed with the package manager, then try finding out what's the complete name of the installed executable. For example, if you type a part of a name of an application in the terminal command line and then press the Tab key once or twice, it should try to auto-complete the full name or show you what alternatives exist. For example, typing:
Code:

qmake
then hit the Tab key twice, you should show you something like:
Code:

qmake-4.6
qmake-4.7

then you type what's missing and you're set to go.

For qmake, this works; but for cmake, it gets a bit tricky...

OK, but when you find out what's the whole name of qmake, run makeParaView similarly to this:
Code:

./makeParaView -qmake  `which qmake-4.6`
If cmake goes by another name, then a symbolic link is usually the quickest way to make things work:
Code:

ln -s `cmake-2.8.3` $FOAM_APPBIN/cmake
If you need to build ParaView with a custom Qt version, here's a blog post of mine that might help you: Building ParaView 3.10.1 with custom Qt 4.6.4

Best regards,
Bruno

Rebecca513 October 31, 2011 17:12

Hi Bruno,

1
I remembered that before I ran makeParaView, OF worked, after makeParaView, OF failed. I know it is reckless, I deleted everything and did the compilation from the very beginning again, hoping that I could at least have a working OF. Speak of stupidity....Anyway, I will send you the new make.log as soon as I get it.

[hangdeng@cee-5dpjzq1 OpenFOAM]$ echo $WM_PROJECT_DIR
/home/hangdeng/OpenFOAM/OpenFOAM-2.0.1

2
qmake I have on the computer is qmake-qt4.6, I guess that means I need to build ParaView with custom qt?

echo $WM_THIRD_PARTY_DIR gives back empty...

and (I guess that is why)

[hangdeng@cee-5dpjzq1 ThirdParty-2.0.1]$ ./makeParaView -qmake 'which qmake-qt4'
./makeParaView: line 36: wmakeCheckPwd: command not found
Error: Current directory is not $WM_THIRD_PARTY_DIR
The environment variables are inconsistent with the installation.
Check the OpenFOAM entries in your dot-files and source them.

Also,

[hangdeng@cee-5dpjzq1 OpenFOAM]$ ln -s `cmake-2.8.4` $FOAM_APPBIN/cmake
bash: cmake-2.8.4: command not found
ln: creating symbolic link `./cmake': File exists

Rebecca513 October 31, 2011 19:55

Hi Bruno,

I just finished compiling OF, and I checked It is working. I attached the make.log anyway.

But somehow, last time, after I tried to run the makeParaView (or install qmake & cmake), it failed.

So, now I am gonna play on the safe side in terms of compiling paraView. I wonder if the information in the previous post showed any of the problem. Or I should go ahead and try what you posted for compiling paraview with custom QT?

Thank you so much for your patient help!

Best,

Hang

wyldckat November 1, 2011 03:23

Hi Hang,

Well, I don't see any "make.log.tar.gz" attached on your latest 2 posts ;)

You might want to read this blog post of mine: Advanced tips for working with the OpenFOAM shell environment - it explains a bit how the OpenFOAM shell environment works, which might help you understand the problem you were having.

As for compiling ParaView, it's up to you to choose the best option. I don't have time in the next few days to test installing OpenFOAM on virtual machines with CentOS 6.0, so I won't be able to write a lengthy blog post explaining step by step on how to do so :(

Best regards,
Bruno

Rebecca513 November 1, 2011 09:11

Hi Bruno,

Thank you for your kind help. It has been really a big help.

I will keep trying the options available.

I really appreciate your help!

Best,

Hang

linnemann November 1, 2011 15:22

Quote:

Originally Posted by makaveli_lcf (Post 329366)
For 1.6-ext installation got following error:

Code:

[smmplogin OpenFOAM$][smmplogin OpenFOAM$]./centFOAM.py --OF16
All packages will be downloaded to this folder
 and extracted to /SAS/home/alexanderv/centFOAM/
Press enter to continue
installing OpenFOAM-1.6-ext to /SAS/home/alexanderv/centFOAM//OpenFOAM/OpenFOAM-1.6-ext
Folder exists
Already downloaded OpenFOAM-1.6-ext.tar.gz,skipping
Unpacking OpenFOAM-1.6-ext.tar.gz, might take a minut or two
Replacing foamInstall=/home/44792/centFoam/$WM_PROJECT with foamInstall=/SAS/home/alexanderv/centFOAM//$WM_PROJECT in file/SAS/home/alexanderv/centFOAM//OpenFOAM/OpenFOAM-1.6-ext/etc/bashrc
Traceback (most recent call last):
  File "./centFOAM.py", line 235, in ?
    main()   
  File "./centFOAM.py", line 230, in main
    installOpenFOAM(options.path, "1.6-ext", "OF16")
  File "./centFOAM.py", line 157, in installOpenFOAM
    replaceInLine(bashFile,"foamInstall=/home/44792/centFoam/$WM_PROJECT","foamInstall="+path+"/$WM_PROJECT")
  File "./centFOAM.py", line 20, in replaceInLine
    for line in fileinput.FileInput(file,inplace=1):
  File "/usr/lib64/python2.4/fileinput.py", line 231, in next
    line = self.readline()
  File "/usr/lib64/python2.4/fileinput.py", line 300, in readline
    os.rename(self._filename, self._backupfilename)
OSError: [Errno 2] No such file or directory


Hi this has now been fixed.

As to the centFOAM and RHEL 6.x I will have versions up sometime.
There already are some files you can download manually for 6.x which can be found here.

It should be fairly easy to get it running you just have make the right entries in your .bashrc. I've tried experimenting with rpms instead of tar.gz but I think I will go back to the tar.gz approach as I have more freedom to manipulate which stuff goes into the packages so they can be run as standalone packages.

Please do not use the centFOAM.py script for 6.x. I will have an automatic detection of which version you are running, sometime in the future, when I have time.

The reason I'm not focusing on 6.x yet is that our cluster and machines aren't using 6.x but 5.x.

I can although tell you that making OF compile on 6.x is a breeze since GCC is fairly up to date.


All times are GMT -4. The time now is 17:32.