NREL / SOWFA

Other
138 stars 112 forks source link

ln: failed to create symbolic link ‘./xxx.X’: File exists #19

Open hcOnel opened 6 years ago

hcOnel commented 6 years ago

I get many of these errors during Allwmake. Would this cause any errors during the usage?

hcOnel commented 6 years ago

And afterwards, compilation terminated messages show up due to many No such file or directory errors. I am compiling SOWFA on a fresh OpenFOAM 2.4.0 installation.

Bartdoekemeijer commented 6 years ago

I think the failed to create symbolic link errors are not an issue. I have had these before, and we have SOWFA running on our cluster. Just make sure you run "Allwclean" before you run "Allwmake" to remove any old compiled code. I am not sure about the No such file or directory. Can you share your Allwmake output log? Also, make sure you run Allwmake from the main SOWFA folder directory, since the Bash script will cd into subfolders from there.

hcOnel commented 6 years ago

Many thanks for the quick reply Sir. I will try those and inform you further.

hcOnel commented 6 years ago

Ok, I am following the directives in the README.SOWFA file. My "clean" SOWFA directory is /home/canon/OpenFOAM/SOWFA/. I have run makeNewWorkingDir here, which copied everything to /home/canon/OpenFOAM/canon-2.4.0/SOWFA/ directory. Files here are shown as linked, and I guess this is the "main SOWFA directory" you are refering to. I run Allwclean and Allwmake here. You can find the Allwmake log attached. make.log

Bartdoekemeijer commented 6 years ago

Okay, some remarks:

hcOnel commented 6 years ago

Hello again, I have applied those 2 commits about the option file and run ./Allwmake again. I get the attached terminal output. After when I run an example; say, /example.ALM. After executing ./runscript.preprocess, I get the following output: ./runscript.preprocess: line 77: /home/canon/.bash_profile: No such file or directory Hence I manually create a symbolic link of .bash_profile file to where it looks for (my $HOME directory). But after this, I get this error: ModuleCmd_Use.c(231):ERROR:64: Directory '/nopt/nrel/apps/modules/candidate/modulefiles' not found Where am I supposed to obtain this directory?

Bartdoekemeijer commented 6 years ago

Hi,

The .bash_profile file in the SOWFA repository is simply an example script which sets up the command "OpenFOAM-2.4.x". See line 14 and onwards. Basically, all it does is set up your environment for OpenFOAM runs. Hence, you have to adjust this to your HPC and OpenFOAM installation.

On the cluster in Delft, we simply load OpenFOAM (set the enviromental variables) using module load openfoam/2.4.0. Hence, we choose not to use .bash_profile files inside runscript.preprocess/runscript.solve, and just replace

source $HOME/.bash_profile OpenFOAM-$OpenFOAMversion

with

module load openfoam/2.4.0

It is up to you to figure out how to adjust it to your computer, based on the decisions you made for the installation of OpenFOAM. Also, it will probably help you to become more familiar with the Linux environment, so you can get a deeper understanding of what ./Allwmake, ./runscript.preprocess, etc. do. It might be difficult to use SOWFA properly without that understanding.

Kind regards, Bart

hcOnel commented 6 years ago

Thank you for your kind and patient comments. I will fix those first. Regards.

Xiangheng-Feng commented 3 years ago

hello. I have successfully complied the OpenFOAM2.4.x and SOWFA but without OpenFAST according to the notes done by pablo-benito. I met the same problem when I want to run an example ALM. I put the .bash_profile to the &HOME/ location, and it still told me that: fxh@ubuntu:~/SOWFA/exampleCases/example.ALM$ ./runscript.preprocess Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables... ./runscript.preprocess: line 78: OpenFOAM-2.4.x-central: command not found Getting the control dictionary ready... Getting the initial condition directory from the precursor... cp: cannot stat '/projects/precursor/neutral3x3/20000': No such file or directory Copy the the base mesh from the precursor... cp: cannot stat '/projects/precursor/neutral3x3/constant/polyMesh': No such file or directory

  1. It said that the OpenFOAM-2.4.x-central command not found, so I changed it as OpenFOAM-2.4.x, but it still said not found.
  2. '/projects/precursor/neutral3x3/20000' not found; I think it wants to copy initial condition and mesh results from other files to save time, but I do can not find these files~ so what should I do to? should I point the precursor to other location?
rthedin commented 3 years ago

Answering your questions:

  1. OpenFOAM-2.4.x-central is nothing more than a function. It is saying that it can't be found because it doesn't exist (or it is not in your $PATH). If you notice, there is an equivalent SOWFA-2.4.x function defined inside the .bash_profile file provided with the SOWFA repository. The original intent of the OpenFOAM-2.4.x-central is that the user can have several different versions of OpenFOAM installed and load a specific one up with every script. If you only have one version and yours is working, then you can skip this function call.

  2. The same thing is happening here. The error is telling you what happened- That path could not be found. You are probably trying to run a case in which a precursor is needed. Do you have it? If yes, is it in the path the code is looking for? The error is telling you that path. If you have it and it is not there, give the correct path to the scripts. If you do not have the precursor, then you have to first run it. There are a few examples in the exampleCases directory.