After updating OpenFoam-1.5-dev to revision 1263 "wmake libso OpenFOAM" fails. The compiler complains that lnInclude/ggiGAMGInterfaceTemplates.C cannot be found. Manually creating a symbolic link fixes the problem, so I'm wondering if the link in lnInclude was not committed by accident.

The compiler complains that lnInclude/ggiGAMGInterfaceTemplates.C cannot be found. Manually creating a symbolic link fixes the problem, so I'm wondering if the link in lnInclude was not committed by accident.

I'm not a developer and I can't comment on what the svn guys are doing, but if you check the .gitignore file in the git repo, you'll see that the 'lnInclude' are explicitly ignored everywhere. Thus I'd expect that they should never be part of an svn commit either.

The files in lnInclude are normally linked in as part of the wmake process. Of course, if extra C/H files have been added since the last of wmake, they won't get linked in at all. If you examine src/Allwmake, you'll notice how they avoid a similar sort of problem by using "wmakeLnInclude -f OpenFOAM" first.

To avoid these sort of problems in general, you use the following snippet after any major code reorganization:

Code:

$ find -name lnInclude -exec wmakeLnInclude -f {} \;

You might still run into slight difficulty with "wmake all" if entire subdirectories have been removed and the Make/ directory wasn't, but this is also fairly quick to sort out.

I did use the Allwmake script in src/. Looking at it I see it does not use the "-f" flag, so my lnInclude directory was not updated. Good to know though that i can manually run wmakeLnInclude instead of creating the links on my own.