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] Compile OF 2.3 on Mac OS X .... the patch (https://www.cfd-online.com/Forums/openfoam-installation/130113-compile-2-3-mac-os-x-patch.html)

alexeym April 16, 2014 06:33

Quote:

Originally Posted by maCrobo (Post 486458)
I didn't know of this source thing either... The problem here is that I don't understand the logic behind all these things I'm doing to compile OpenFoam... Anyway, I did it and it compiled that specific solver.

'source etc/bashrc' is a synonym for '. etc/bashrc' and this step is described in section 4.3 (Final steps) point 9 of the guide on OpenFOAM wiki. You have to do this thing every time you'd like to use OpenFOAM.

Quote:

I have another question: should have I downloaded the patch directly in the Case Sensitive Image, or it is ok that I downloaded on my Downloads system folder where I usually download everything?
In case of patch it doesn't matter, you can do it either way. Cause all source code changes are inside patch file. It even doesn't matter how you name the patch file actually (as long as you use correct name in patch -p1 command) ;)

maCrobo April 16, 2014 08:32

2 Attachment(s)
Before I said something not true, the solver wasn't compiled, here it is where it gives errors:

Code:

/Users/myName/OpenFOAM/OpenFOAM-2.3.x/src/transportModels/incompressible/transportModel/transportModel.H:39:32: fatal error: primitiveFieldsFwd.H: No such file or directory

compilation terminated.
compilation terminated.
make: *** [Make/darwinIntel64Gcc46DPOpt/driftFluxFoam.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Make/darwinIntel64Gcc46DPOpt/incompressibleTwoPhaseInteractingMixture.o] Error 1

I found 'primitiveFieldsFwd.H' in this folder: "/Volumes/OpenFoam-2.3.x/OpenFOAM-2.3.x/src/OpenFOAM/fields/Fields".

EDIT:

I tried to compile OpenFoam again and I managed to get something done with the following errors (found in the attachments).


Note: I edited applications/solvers/multiphase/driftFluxFoam/Make/options file, added '-ltwoPhaseMixture \' line after 'EXE_LIBS = \' line without running ./Allwmake in driftFluxFoam folder.


I would like to know if everything is working properly. The reason is that today I was talking to a classmate who has Ubuntu and told me I could find the tutorials in the run directory; I don't have a "run" directory in my OpenFoam directory, but I found the tutorials directory directly under the OpenFoam main directory, which is in my Sparse Image. Anyway, what should I do to check?

totalart April 19, 2014 12:29

I have successfully installed OF 2.3.0 following the instruction in Alexey Matveichev's blog. Everything's okay except snappyHexMesh. Following error occurs with SHM(I'm not running parallel).

dyld: Symbol not found: __SCOTCHbgraphbipartststratab
Referenced from: /Users/totalart/OpenFOAM/OpenFOAM-2.3.0/platforms/darwinIntel64ClangDPOpt/lib/openmpi-system/libptscotchDecomp.so
Expected in: flat namespace
in /Users/totalart/OpenFOAM/OpenFOAM-2.3.0/platforms/darwinIntel64ClangDPOpt/lib/openmpi-system/libptscotchDecomp.so
Trace/BPT trap: 5


In the Allwmake log, there was no error but warnings only. Anyone can advise what the problem is?

Many Thanks,
Young-kook

alexeym April 19, 2014 12:44

Hi,

I've reproduced the problem. I'll try to fix it and post updated patch during weekend.

alexeym April 21, 2014 14:05

Hi,

well, it appeared that previous patch had more problems than I though. So here is a new patch for 2.3.0 - https://bitbucket.org/mrklein/openfo...20140421.patch.

Unfortunately, due to the problems with dynamicCode in previous patch, you need to rebuild everything. The list of bugs in previous patch that was fixed in the new one:
- mess with DYLD_LIBRARY_PATH, now I think it is finally correct
- error in Allwmake for ptscotch decomposition method (this was the reason for the error)
- error in wmake/Makefile (OpenFOAM code expected dynamic library to have extension .dylib while in Makefile it was .so, and that breaks dynamicCode functionality)
- Clang over-optimization of limited schemes that lead to FPE

totalart April 23, 2014 09:42

Hi Alexey,
SnappyHexMesh works well now. It seems everything okay so far. Thanks a lot!

RMacReamoinn April 23, 2014 12:47

OpenFOAM-2.3.x - DriftFluxFoam Error 1
 
1 Attachment(s)
Hi,

I am trying to install OpenFOAM-2.3.x on Mac OS Mavericks and I am getting an error I have been unable to resolve. I am new to using the Terminal and I am new to OpenFOAM.

I downloaded the latest version of OpenFOAM from the website and have installed it following the instructions that can be found at:

http://openfoamwiki.net/index.php/In...OpenFOAM_2.2.2

albeit somewhat modified as per the README instructions associated with the OpenFOAM-2.3.0 patch:

http://sourceforge.net/p/openfoam-ex...ches/MacPatch/

However, I keep getting the same error and I am not sure how to rectify it.

make[2]: *** [/Users/username/OpenFOAM/OpenFOAM-2.3.x/platforms/darwinIntel64Gcc46DPOpt/bin/driftFluxFoam] Error 1
make[1]: *** [driftFluxFoam] Error 2
make[1]: Target `application' not remade because of errors.
make: *** [multiphase] Error 2
make: Target `application' not remade because of errors.

In this instance, I did not have ParaView installed on my system and I got the following error.

ERROR: ParaView not found in /Users/username/OpenFOAM/ThirdParty-2.3.x/platforms/darwinIntel64Gcc46/ParaView-4.1.0

But even if I do have ParaView installed when installing OpenFOAM, I still get the same errors listed above. Please find the appropriate log file attached. Hoping you can help.

Réamonn

alexeym April 23, 2014 13:20

Hi,

1. If you take a look at the line above ERROR, you'll see

Code:

WARN: PV3 readers not building: ParaView_VERSION=4.1.0
So I guess, it has found your installation of Paraview, so line with error can be ignored.

2. Are you planning to use driftFluxFoam? If no, you can also ignore the error. If yes, you need to modify Make/options of this solver as it seems that -ltwoPahseMixture is missing there.

RMacReamoinn April 23, 2014 15:22

Thanks Alexey,

At this stage I am just trying to expose myself to OpenFOAM and become familliar with it. Therefore, I have no specific plans to use DriftFluxFoam.

Réamonn

alexeym April 24, 2014 06:30

How to fix build of driftFluxFoam
 
As there were two posts with error in compilation of this solver, I've decided to post a way to correct it. The guide is valid for commit 6f6bc2f78679cffacf479cb58cc74497bbf3963c (IIRC there's no such problem on Linux, so guess this correction will be valid for later commits as error won't be fixed in repository).

1. Go to $FOAM_APP/solvers/multiphase/driftFluxFoam
2. Open Make/options in an editor
3. Make it look like:

Code:

EXE_INC = \
    -IincompressibleTwoPhaseInteractingMixture \
    -ImixtureViscosityModels/lnInclude \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I$(LIB_SRC)/meshTools/lnInclude \
    -I$(LIB_SRC)/sampling/lnInclude \
    -I$(LIB_SRC)/fvOptions/lnInclude \
    -I$(LIB_SRC)/transportModels \
    -I$(LIB_SRC)/transportModels/twoPhaseMixture/lnInclude \
    -I$(LIB_SRC)/transportModels/incompressible/lnInclude \
    -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
    -I./relativeVelocityModels/lnInclude

EXE_LIBS = \
    -lfiniteVolume \
    -lmeshTools \
    -lsampling \
    -lfvOptions \
    -lincompressibleTransportModels \
    -ltwoPhaseMixture \
    -ldriftFluxTransportModels \
    -ldriftFluxRelativeVelocityModels

in fact it's just addition of a line "-ltwoPhaseMixture \" after "-lincompressibleTransportModels \"

4. run wmake

Solver should compile now without errors.

RMacReamoinn April 28, 2014 16:32

Alexey,

Thanks for the help. I have OpenFOAM and ParaView installed and working now. I also included driftFluxFoam correction also and it worked well.

Réamonn

LucaMagher May 8, 2014 14:04

Errors in compiling
 
1 Attachment(s)
Hi guys

I followed the guide and read through this thread. I tried implementing all the suggestions, though, I can't compile yet. I'd love to receive your help, thanks a lot.

There are two things to point out

1) the message when I 'source etc/bashrc' which is
majesty:OpenFOAM-2.3.x ashleybrooks$ source etc/bashrc
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamEtcFile: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/etc/config/settings.sh: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/etc/config/aliases.sh: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamEtcFile: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamEtcFile: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamEtcFile: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamEtcFile: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: /Users/ashleybrooks/OpenFOAM/OpenFOAM-2.3.x/bin/foamCleanPath: No such file or directory
-bash: ulimit: open files: cannot modify limit: Operation not permitted

2) the consequent error message

majesty:OpenFOAM-2.3.x ashleybrooks$ ./Allwmake 2>&1 | tee logName.log
./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.

alexeym May 9, 2014 03:05

Hi,

it's hard to tell where the problem is (but I guess it's somewhere around foamInstall= line in bashrc). Is the disk image mounted to $HOME/OpenFOAM? Did you modify bashrc? Can you show bashrc if you did modifications?

Roskiki May 13, 2014 01:32

Hi,

I am trying to install OpenFOAM-2.3.x on Mac OS Mavericks and I am getting an error I have been unable to resolve. I am new to using the Terminal and I am new to OpenFOAM.


1 error generated.
make[2]: *** [Make/darwinIntel64ClangDPOpt/tractionDisplacementCorrectionFvPatchVectorField.o] Error 1
SOURCE=solidEquilibriumDisplacementFoam.C ; clang++ -m64 -DdarwinIntel64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-unused-comparison -O3 -DNoRepository -ftemplate-depth-100 -I/Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/finiteVolume/lnInclude -ItractionDisplacementCorrectionStress -I../solidDisplacementFoam -IlnInclude -I. -I/Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude -I/Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OSspecific/POSIX/lnInclude -fPIC -Ddarwin -c $SOURCE -o Make/darwinIntel64ClangDPOpt/solidEquilibriumDisplacementFoam.o
In file included from solidEquilibriumDisplacementFoam.C:38:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/finiteVolume/lnInclude/fvCFD.H:7:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/finiteVolume/lnInclude/fvMesh.H:50:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/polyMesh.H:45:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/primitiveMesh.H:54:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/edgeList.H:32:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/edge.H:41:
In file included from /Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/linePointRef.H:36:
/Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/src/OpenFOAM/lnInclude/line.H:39:10: fatal error: 'PointHit.H' file not found
#include "PointHit.H"
^
1 error generated.
make[2]: *** [Make/darwinIntel64ClangDPOpt/solidEquilibriumDisplacementFoam.o] Error 1
make[2]: Target `/Users/Mowa/OpenFOAM/OpenFOAM-2.3.0/platforms/darwinIntel64ClangDPOpt/bin/solidEquilibriumDisplacementFoam' not remade because of errors.
make[1]: *** [solidEquilibriumDisplacementFoam] Error 2
make[1]: Target `application' not remade because of errors.
make: *** [stressAnalysis] Error 2
make: Target `application' not remade because of

alexeym May 13, 2014 03:07

Hi,

as the error is very similar to the one in the post #28, guess you've cloned repository into case insensitive file system and then copied sources to disk image with case sensitive FS. Is it right?

alexeym May 13, 2014 07:07

Well, if you really checked out sources on case insensitive FS first and after copied them into disk image, then you have to delete these sources, check out them from git repository into disk image (with case sensitive FS) directly and proceed with compilation. I.e. algorithm is something like this:
  1. mkdir -p $HOME/OpenFOAM
  2. hdiutil attach -mountpoint $HOME/OpenFOAM <disk image name>
  3. cd $HOME/OpenFOAM
  4. git clone <repo URL>
  5. cd OpenFOAM-2.3.x
  6. apply patches
  7. edit etc/bashrc
  8. source etc/bashrc
  9. ./Allwmake > log.Allwmake 2>&1

I can if I have to, otherwise I prefer to speak English.

f0208secretx May 13, 2014 11:56

Quote:

Originally Posted by alexeym (Post 483219)
Hi,

try rereading what I've written in my reply. I will repeat it here in bold:

1. the patch here is for OpenFOAM-2.3.x (git version), patch in the blog is for OpenFOAM-2.3.0 (release source packs).

so basically you're trying to apply patch for git version of OpenFOAM (acquired with git clone git://github.com/OpenFOAM/OpenFOAM-2.3.x.git) to the release packs (you've downloaded OpenFOAM-2.3.0.tgz and ThirdParty-2.3.0.tgz from openfoam.org). As a result it fails.

Hello everyone,


I am newbie to OpenFOAM. The installation attempt is made on OS X 10.9.2.

I got an Error for [dummysizes] and [scotch], which I think is related to openmpi? The error messages are as follows:

Code:

gcc-mp-4.6 -O3 -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -Drestrict=__restrict -DSCOTCH_VERSION=6 -DSCOTCH_RELEASE=0 -DSCOTCH_PATCHLEVEL=0 dummysizes.c -o dummysizes -Xlinker --no-as-needed -lz -lm -lrt
ld: unknown option: --no-as-needed
collect2: ld returned 1 exit status
make[2]: *** [dummysizes] Error 1
make[1]: *** [scotch] Error 2
make: *** [scotch] Error 2
+ make realclean

and
Code:

gcc-mp-4.6 -O3 -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -Drestrict=__restrict -DSCOTCH_VERSION=6 -DSCOTCH_RELEASE=0 -DSCOTCH_PATCHLEVEL=0 dummysizes.c -o dummysizes -Xlinker --no-as-needed -lz -lm -lrt
ld: unknown option: --no-as-needed
collect2: ld returned 1 exit status
make[2]: *** [dummysizes] Error 1
make[1]: *** [scotch] Error 2
make: *** [ptscotch] Error 2
+ make realclean

Based on the discussions, I assume this is a problem with the incompatible patch versions. I downloaded OpenFOAM source pack from .org (OpenFOAM-2.3.0.tgz) and the patch from this thread (OpenFOAM-2.3.x-Mac.patch). Hence the problem. The solution to this problem should be removing everything I got so far and redo the whole process using the patch I will download from alexeym's blog: (btw the blog is very clear, thanks!)
HTML Code:

http://matveichev.blogspot.co.uk/2014/02/building-openfoam-230-on-os-x.html
I read the blog and followed it through -- it seems fine when I tried to run the cavity tutorial examples (the steps are listed on the website as well). Question is: under what circumstances will I run into troubles if I just neglect the error messages I got from above, the [dummysizes], [scotch], and [ptscotch]?

I can for sure just run the whole process again since I know where is the problem (or I think I know). I am just taking this as an opportunity to educate myself about how things work, thanks a lot. :)


JHW

alexeym May 14, 2014 07:13

Hi,

I don't know much about building OF on OS X with Macport's gcc (I've used it successfully 2 years ago for 2.1.1, after I used Linux, and finally recently I've used clang to build OF on OS X).

Concerning your question about scotch, I've used 'grep -r lscotch *' and 'grep -r lptscotch *' in $WM_PROJECT_DIR to get rough estimation of the applications and libraries using Scotch library, and I guess you won't be able to use:

foamyHexMesh
renumberMesh
decomposePar (with scotch decomposition method)
foamyQuadMesh
snappyHexMesh
redistributePar

Also, since you're referencing to the post where I used clang to build OpenFOAM and your error is with gcc, I don't know what's gone wrong during installation process.

alexeym May 14, 2014 08:23

Hi,

Quote:

Originally Posted by Roskiki (Post 491743)
jais pas bien compri, comment faire le clonage de la source...etc. pourriez vous me le code pour taper sur le terminal?

Cause I don't know what you'd done already, I'll describe whole procedure from the beginning (more or less how I do these things):

1. Create disk image with case sensitive file system. There is a guide in wiki with pictures but I prefer CLI interface:

Code:

$ cd
$ hdiutil create -size 4.4g -type SPARSEBUNDLE -fs HFSX -volname OpenFOAM -fsargs -s OpenFOAM.sparsebundle

This command will create disk image with a name OpenFOAM.sparsebundle in you home folder. Wiki suggests creation of sparseimage type disk image but sparse bundle disk images ... here is a quote from a discussion with my colleague:

Quote:

The only interest of sparseimage are for compatility with OSX < 10.5 and sparsebundle is better with backup.
2. Create mount point for disk image and attach disk image (again it was suggested by my colleague, to have single disk image for all OF versions):

Code:

$ mkdir -p $HOME/OpenFOAM
$ hdiutil attach -mountpoint $HOME/OpenFOAM OpenFOAM.sparsebundle

3. Now you clone sources into the disk image (command for OF 2.3.x):

Code:

$ cd $HOME/OpenFOAM
$ git clone git://github.com/OpenFOAM/OpenFOAM-2.3.x.git

At this point you have sources on case sensitive FS, so now it's time to get patch, apply patch to the sources and run compilation:

Code:

$ cd OpenFOAM-2.3.x
$ curl -L http://sourceforge.net/p/openfoam-extend/svn/HEAD/tree/trunk/Breeder_2.3/distroPatches/MacPatch/OpenFOAM-2.3.x-Mac.patch?format=raw > OpenFOAM-2.3.x-Mac.patch
$ patch -p1 < OpenFOAM-2.3.x-Mac.patch

After these manipulations you need to edit etc/bashrc (I don't know what version of gcc you're using, I don't know if you installed all necessary software dependencies using Macports, so at this points it's all up to you).

After you just

Code:

$ source etc/bashrc
$ ./Allwmake > log.Allwmake 2>&1

and wait.

alexeym May 14, 2014 11:33

If you read the first message of the thread:

Quote:

People who have been through the Mac-patch cycle several times will notice the absence of a ThirdParty-patch: the reason is that all the necessary third-party software (CGAL, metis, scotch) is available at MacPorts with a simple "port install"-command. This is also the recommended way to install the necessary compiler and MacPorts.
So there's no ThirdParty-2.3.x.patch. As I don't use Macports (though I can go to Macports web site and find names of the packages with necessary options I'd rather not) I can't add anything to the quote.


All times are GMT -4. The time now is 23:42.