CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Installation

[foam-extend.org] foam-extend 1.6: ScotchDecomp error while compiling on Ubuntu 16.04

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By wyldckat

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 4, 2018, 12:41
Default foam-extend 1.6: ScotchDecomp error while compiling on Ubuntu 16.04
  #1
Member
 
Katt
Join Date: May 2017
Posts: 30
Rep Power: 5
Katt is on a distinguished road
Hi,


I am trying to install FoamExtend-1.6 on Ubuntu 16.04 LTS.


I am following the instruction for Ubuntu 14.04 from the following page:
https://openfoamwiki.net/index.php/I...u#Ubuntu_14.04


While compiling the ThirdParty, I had an error linked to 'libcc' saying the .tar.gz file was missing and downloaded it and placed it right place and had no errors.


While compiling FoamExtend,
I had issues related to scotchDecomposition:
scotchDecomp/scotchDecomp.C:116:20: fatal error: scotch.h: No such file or directory
compilation terminated



And further it complaints the essential lscotchDecomp library is missing that is required by libdecompositionMethods.so and subsequently the compilation of lmeshTools, ldynamicMesh and lfiniteVolume libraries are failing.


I have tried many times but did not come across how to resolve the scotchDecomp error. Can anyone guide me?


Thanks.
Katt is offline   Reply With Quote

Old   October 8, 2018, 09:21
Default
  #2
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,956
Blog Entries: 43
Rep Power: 122
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Greetings Katt,

I received your PM just now, while I was tidying up a massive thread on the community forum... and was thinking of possibly looking into your request later today...

But does it really have to be foam-extend 1.6-ext?

Or is it because the instructions for later versions (foam-extend 3.0 to 4.0) are not as easy to follow?

Best regards,
Bruno
__________________
wyldckat is offline   Reply With Quote

Old   October 8, 2018, 09:31
Default
  #3
Member
 
Katt
Join Date: May 2017
Posts: 30
Rep Power: 5
Katt is on a distinguished road
Hi Bruno;


The reason why I am still using Foam-Extend 16 is because I have used it for my earlier investigations and want to be consistent with respect to it.



Also I came across a separate solver named poreFoam that was initially built on FExt1.6 and later the developers updated it to 2.x versions of normal openfoam but I found the solver worked better on FExtd 1.6.


That being said, I have different versions of normal OF and FExtd on my personal laptop which I did not come across issues while building the source code.
Katt is offline   Reply With Quote

Old   October 8, 2018, 12:10
Default
  #4
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,956
Blog Entries: 43
Rep Power: 122
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
I've started working on the instructions for 1.6-ext and Ubuntu 16.04 on this section: https://openfoamwiki.net/index.php/I...u#Ubuntu_16.04

It's currently building foam-extend itself at the moment, so it will take a long while, but the details about Scotch are already solved in those instructions. But now you have two choices:
  1. Either you restart the build from scratch, by following the new section.
  2. Or if you want to try and repair your current installation, I may need to write in more detail the following steps that need to be done to fix your installation:
    1. You will need to remove the lines about Scotch from the file "etc/prefs.sh".
    2. Then source again the file "etc/bashrc".
    3. (edit Apply the last fix in step #9.
    4. Then go into the folder "ThirdParty".
    5. Fix the Scotch patch file, namely with this command:
      Code:
      sed -i -e 's=$(LDFLAGS)=$(LDFLAGS) -pthread=' ./rpmBuild/SOURCES/scotch-5.1.10b_patch_0
    6. Then build the ThirdParty directory by running the commands in step #14.
    7. And then continue following the instructions from there onwards.
edit: Finished the build successfully roughly an hour later.
Saideep likes this.

Last edited by wyldckat; October 8, 2018 at 13:01. Reason: see the two "edit:"
wyldckat is offline   Reply With Quote

Old   December 12, 2018, 23:34
Default
  #5
Senior Member
 
Elham
Join Date: Oct 2009
Posts: 184
Rep Power: 12
Elham is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
I've started working on the instructions for 1.6-ext and Ubuntu 16.04 on this section: https://openfoamwiki.net/index.php/I...u#Ubuntu_16.04

It's currently building foam-extend itself at the moment, so it will take a long while, but the details about Scotch are already solved in those instructions. But now you have two choices:
  1. Either you restart the build from scratch, by following the new section.
  2. Or if you want to try and repair your current installation, I may need to write in more detail the following steps that need to be done to fix your installation:
    1. You will need to remove the lines about Scotch from the file "etc/prefs.sh".
    2. Then source again the file "etc/bashrc".
    3. (edit Apply the last fix in step #9.
    4. Then go into the folder "ThirdParty".
    5. Fix the Scotch patch file, namely with this command:
      Code:
      sed -i -e 's=$(LDFLAGS)=$(LDFLAGS) -pthread=' ./rpmBuild/SOURCES/scotch-5.1.10b_patch_0
    6. Then build the ThirdParty directory by running the commands in step #14.
    7. And then continue following the instructions from there onwards.
edit: Finished the build successfully roughly an hour later.

Dear Bruno,

I have installed OpenFOAM_2.3.0 on magus supercomputer and got the same error:

Code:
--> FOAM FATAL ERROR:
You are trying to use scotch but do not have the scotchDecomp library loaded.
This message is from the dummy scotchDecomp stub library instead.

Please install scotch and make sure that libscotch.so is in your LD_LIBRARY_PATH.
The scotchDecomp library can then be built in $FOAM_SRC/parallel/decompose/decompositionMethods/scotchDecomp
The reason for using OpenFOAM-2.3.0 is that I could not compile my own code in the newer version of OpenFOAM. Honestly, it is time-consuming and I have the shortage of time.
I cannot see etc/prefs.sh file to fix it.

Regards,

Elham
Elham is offline   Reply With Quote

Old   December 14, 2018, 02:18
Default
  #6
Member
 
Fatih Ertinaz
Join Date: Feb 2011
Location: Istanbul
Posts: 62
Rep Power: 11
fertinaz is on a distinguished road
Elham

OF-2.3 doesn't have the exact same structure as foam-extend.

There is no "etc/prefs.sh", however there is "etc/config/scotch.sh".

You said you're doing the installation on a supercomputer. So if there is a scotch version already available, try to use that one first. You can see the following definition in the scotch.sh file:
Code:
export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$SCOTCH_VERSION
change it with sth. like:
Code:
export SCOTCH_ARCH_PATH=${MAGNUS_SCOTCH_BASE}
I made up the name "${MAGNUS_SCOTCH_BASE}" but if they are using the module system like a typical cluster environment, you can see its details with "module show" command. The idea is to set arch path to the scotch installation directory.

After doing this, load the appropriate module and then re-start installation. It is smart enough to pick the sources that are not compiled previously. Don't forget to load the scotch module before installation starts, otherwise you might suffer from the following:
Quote:
... make sure that libscotch.so is in your LD_LIBRARY_PATH.
If scotch is not available as a module, then you have to install it first before you compile "$FOAM_SRC/....../scotchDecomp" as the err msg you shared explicitly states. In order to help you with that, I guess you need to provide more information such as:
  • What is the output of the third party log? What went wrong during scotch compilation?
  • What compilers and mpi are you using? Are they system versions or are you compiling them as well?
  • What is the OS on the cluster?

Cheers

// Fatih
fertinaz is offline   Reply With Quote

Old   December 19, 2018, 21:27
Default
  #7
Senior Member
 
Elham
Join Date: Oct 2009
Posts: 184
Rep Power: 12
Elham is on a distinguished road
Quote:
Originally Posted by fertinaz View Post
Elham

OF-2.3 doesn't have the exact same structure as foam-extend.

There is no "etc/prefs.sh", however there is "etc/config/scotch.sh".

You said you're doing the installation on a supercomputer. So if there is a scotch version already available, try to use that one first. You can see the following definition in the scotch.sh file:
Code:
export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$SCOTCH_VERSION
change it with sth. like:
Code:
export SCOTCH_ARCH_PATH=${MAGNUS_SCOTCH_BASE}
I made up the name "${MAGNUS_SCOTCH_BASE}" but if they are using the module system like a typical cluster environment, you can see its details with "module show" command. The idea is to set arch path to the scotch installation directory.

After doing this, load the appropriate module and then re-start installation. It is smart enough to pick the sources that are not compiled previously. Don't forget to load the scotch module before installation starts, otherwise you might suffer from the following:

If scotch is not available as a module, then you have to install it first before you compile "$FOAM_SRC/....../scotchDecomp" as the err msg you shared explicitly states. In order to help you with that, I guess you need to provide more information such as:
  • What is the output of the third party log? What went wrong during scotch compilation?
  • What compilers and mpi are you using? Are they system versions or are you compiling them as well?
  • What is the OS on the cluster?

Cheers

// Fatih

Dear Fatih,


Thanks for your reply. I cannot find where scotch is installed. Even "module show scotch" command returnes:


ModuleCmd_Display.c(157):ERROR:105: Unable to locate a modulefile for 'scotch'




When I did "module avail", no scotch module was found on the list.


Then, I tried to decompose with OpenFOAM+ which is already available on the supercomputer and run my own code. I could decompose without any error and a processor folder is created with a time folder on it. When I run my own case there is an error indicating that the processor0 is not found. I think my code is not compatible with the new version of decomposePar called collated I/O.


Can you please helping me to fix this problem?



Regards,


Elham
Elham is offline   Reply With Quote

Old   December 20, 2018, 00:34
Default
  #8
Member
 
Fatih Ertinaz
Join Date: Feb 2011
Location: Istanbul
Posts: 62
Rep Power: 11
fertinaz is on a distinguished road
Elham

You can't run "module show" for a module you didn't load. If you want to check modules installed, I suggest you running "module spider" rather than "module avail". In some clusters "module avail" is organized in a way that it lists the tools available based on the compilers already loaded. So you might want to check with either "module spider" or simply contact technical support

Anyway I thought you were trying to install OF on the cluster. If that's already installed, you probably don't need to be worried about it.

To help you for the error you mentioned, you need to give more information.

What do you mean by running your own code? Did you develop your own solver? Also, what are the exact steps you're following?

Since collated option is fairly new, different OF versions are not compatible with each other. For instance, when you have 8 mpi ranks OF-5.0 creates a folder called "processors", on the other hand OF-6 produces a folder called "processors8".

If you're using the same OF version for decomposing and running the solver, error might be related to a problem in your setup. I'd try overriding fileHandler for uncollated option to see whether it works with multiple processor directories. The error you mentioned sounds like, you're imposing collated option but the cluster expects uncollated fileHandler.

// Fatih
fertinaz is offline   Reply With Quote

Old   December 20, 2018, 00:39
Default
  #9
Senior Member
 
Elham
Join Date: Oct 2009
Posts: 184
Rep Power: 12
Elham is on a distinguished road
Quote:
Originally Posted by fertinaz View Post
Elham

You can't run "module show" for a module you didn't load. If you want to check modules installed, I suggest you running "module spider" rather than "module avail". In some clusters "module avail" is organized in a way that it lists the tools available based on the compilers already loaded. So you might want to check with either "module spider" or simply contact technical support

Anyway I thought you were trying to install OF on the cluster. If that's already installed, you probably don't need to be worried about it.

To help you for the error you mentioned, you need to give more information.

What do you mean by running your own code? Did you develop your own solver? Also, what are the exact steps you're following?

Since collated option is fairly new, different OF versions are not compatible with each other. For instance, when you have 8 mpi ranks OF-5.0 creates a folder called "processors", on the other hand OF-6 produces a folder called "processors8".

If you're using the same OF version for decomposing and running the solver, error might be related to a problem in your setup. I'd try overriding fileHandler for uncollated option to see whether it works with multiple processor directories. The error you mentioned sounds like, you're imposing collated option but the cluster expects uncollated fileHandler.

// Fatih

Dear Fatih,


I have developed my own solver on OpenFoam. I tried to run uncollated option and it works. But I cannot benefit of the speed of the new collated option.


Regards,


Elham
Elham is offline   Reply With Quote

Reply

Tags
compilation error, openfoam 1.6-ext, scotch

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
problem during mpi in server: expected Scalar, found on line 0 the word 'nan' muth OpenFOAM Running, Solving & CFD 3 August 27, 2018 04:18
[mesh manipulation] refineMesh Error mohsen.boojari OpenFOAM Meshing & Mesh Conversion 3 March 1, 2018 22:07
[foam-extend.org] core dumped for foam extended 3.2 on Ubuntu 16.04 qjh888 OpenFOAM Installation 9 September 27, 2016 16:39
decomposePar is missing a library whk1992 OpenFOAM Pre-Processing 8 March 7, 2015 07:53
OF-1.6-ext: compiling fails on ubuntu 12.10 A.Wendy OpenFOAM Installation 1 March 22, 2013 06:47


All times are GMT -4. The time now is 09:04.