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

wmake turns evil ???!!!

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

Reply
 
LinkBack Thread Tools Display Modes
Old   July 10, 2010, 16:05
Default wmake turns evil ???!!!
  #1
Senior Member
 
David Gaden
Join Date: Apr 2009
Location: Winnipeg, Canada
Posts: 426
Rep Power: 14
marupio is on a distinguished road
wmake has suddenly decided to randomly delete my source files when compiling. It happens during the wmakeLnInclude. Good thing I have backups! Here's the output:

dave@Bruce:~/OpenFOAM/dave-1.5-dev/src/PhD$ wmake libso
wmakeLnInclude: linking include files to /home/dave/OpenFOAM/dave-1.5-dev/src/PhD/lnInclude
ln: creating symbolic link `./multiSolverInit.H': File exists
ln: creating symbolic link `./setSolverDomain.H': File exists
ln: creating symbolic link `./endMultiSolver.H': File exists
ln: creating symbolic link `./multiSolverSetControls.C': File exists
ln: creating symbolic link `./multiSolver.H': File exists
ln: creating symbolic link `./createMultiSolver.H': File exists
ln: creating symbolic link `./multiSolverSetInitialSolverDomain.C': File exists
ln: creating symbolic link `./multiSolverTimeFunctions.C': File exists
ln: creating symbolic link `./multiSolverI.H': File exists
ln: creating symbolic link `./multiSolver.C': File exists
ln: creating symbolic link `./multiSolverSetNextSolverDomain.C': File exists
Making dependency list for source file admScalar/admScalar.C
Making dependency list for source file buoyantPressure/buoyantPressureFvPatchScalarField.C
Making dependency list for source file dummyControlDict/dummyControlDict.C
make: *** No rule to make target `multiSolver/multiSolver.dep', needed by `Make/linux64GccDPOpt/dependencies'. Stop.
make: *** Waiting for unfinished jobs....
dave@Bruce:~/OpenFOAM/dave-1.5-dev/src/PhD$

Every file that failed with ln (file exists) is deleted... mercilessly. (No name.H~ to save the day)

The files getting deleted I haven't touched for about a week, and have survived a wmake libso since then. All I did was add another couple of sources (none of the deleted files) to the library, and execute wmake libso. I frequently am adding sources to the library, the only difference I can think of is these ones are 2 directories deep, as opposed to one.

Any ideas?
marupio is offline   Reply With Quote

Old   July 10, 2010, 17:13
Default
  #2
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 9,523
Blog Entries: 36
Rep Power: 97
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Greetings David,

Uhm, are you by any chance putting the real files directly in lnInclude? Because lnInclude is a temporary folder, mainly for symbolic links to the headers, and meant for making it easier for wmake to build the desired binary!

Best regards,
Bruno
__________________
___
I'll be at OFW11 in Portugal
wyldckat is offline   Reply With Quote

Old   July 10, 2010, 18:43
Default
  #3
Senior Member
 
David Gaden
Join Date: Apr 2009
Location: Winnipeg, Canada
Posts: 426
Rep Power: 14
marupio is on a distinguished road
Good idea... but no. The problem even occurs after deleting lnInclude, and the .dep, all the Make/linux directories.
marupio is offline   Reply With Quote

Old   July 11, 2010, 06:50
Default
  #4
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 9,523
Blog Entries: 36
Rep Power: 97
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Hmm... that is strange... can you post the contents of the file Make/files? There should be a logical reason for wmake to go postal

edit: it would also be good to know what the file Make/options has inside it!
__________________
___
I'll be at OFW11 in Portugal

Last edited by wyldckat; July 11, 2010 at 06:53. Reason: Make/options would also be good...
wyldckat is offline   Reply With Quote

Old   July 11, 2010, 08:15
Default
  #5
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: http://olesenm.github.io/
Posts: 779
Rep Power: 19
olesen will become famous soon enough
Quote:
Originally Posted by marupio View Post
wmake has suddenly decided to randomly delete my source files when compiling. It happens during the wmakeLnInclude. Good thing I have backups! Here's the output:

dave@Bruce:~/OpenFOAM/dave-1.5-dev/src/PhD$ wmake libso
wmakeLnInclude: linking include files to /home/dave/OpenFOAM/dave-1.5-dev/src/PhD/lnInclude
ln: creating symbolic link `./multiSolverInit.H': File exists
ln: creating symbolic link `./setSolverDomain.H': File exists
ln: creating symbolic link `./endMultiSolver.H': File exists
ln: creating symbolic link `./multiSolverSetControls.C': File exists
ln: creating symbolic link `./multiSolver.H': File exists
ln: creating symbolic link `./createMultiSolver.H': File exists
...
You can use "wmakeLnInclude -f" to force an update of the linked files.


Quote:
Originally Posted by marupio View Post
Making dependency list for source file dummyControlDict/dummyControlDict.C
make: *** No rule to make target `multiSolver/multiSolver.dep', needed by `Make/linux64GccDPOpt/dependencies'. Stop.
make: *** Waiting for unfinished jobs....
This could be that you reference multiSolver.C in a Make/files, but this file does not actually exist (any more).
olesen is offline   Reply With Quote

Old   July 11, 2010, 14:34
Default
  #6
Senior Member
 
David Gaden
Join Date: Apr 2009
Location: Winnipeg, Canada
Posts: 426
Rep Power: 14
marupio is on a distinguished road
Quote:
Originally Posted by olesen View Post
This could be that you reference multiSolver.C in a Make/files, but this file does not actually exist (any more).
multiSolver.C must be getting deleted before this point. Here is my Make/files:

buoyantPressure/buoyantPressureFvPatchScalarField.C
admScalar/admScalar.C
dummyControlDict/dummyControlDict.C
multiSolver/multiSolver.C
multiTimeInstant/multiTimeInstant.C
timeCluster/timeCluster.C
timeCluster/timeClusterList.C
// equation/equationMaster/equationMaster.C
// equation/equation/equation.C
// equation/equationOperation/equationOperation.C
// admScalar/admScalarList.C

LIB = $(FOAM_USER_LIBBIN)/libPhD

And here is my Make/options:

EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-Ituple2Lists

LIB_LIBS = \
-lfiniteVolume
marupio is offline   Reply With Quote

Old   July 11, 2010, 17:53
Default Problem found
  #7
Senior Member
 
David Gaden
Join Date: Apr 2009
Location: Winnipeg, Canada
Posts: 426
Rep Power: 14
marupio is on a distinguished road
It was a file name collision.

PhD
|-timeCluster
|-Make
|-multiSolver
|-multiSolver_beforeChanges
|-multiSolver_bak
'-tuple2lists

I had copied the multiSolver directory to another name to archive some changes I was making. When wmakeLnInclude runs, it deletes all the duplicate source files in all directories, leaving only one copy... in my case, it left me the "multiSolver_beforeChanges" files.

Once I got rid of the archive directories, wmake started behaving again.

I'm thinking that's a pretty poor fail mode for a file name collision!
marupio is offline   Reply With Quote

Reply

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Problems Installing OF 1.6 32 bit bucksfan OpenFOAM Installation 19 August 4, 2009 01:36
Installation OF1.5-dev ttdtud OpenFOAM Installation 46 May 5, 2009 02:32
OpenFOAM15 installables are incomplete problem with paraFoam tryingof OpenFOAM Bugs 17 December 7, 2008 05:41
Problem of compilation OF 14Allwmake command not found erik_d OpenFOAM Bugs 13 September 13, 2008 21:45
ParaFoam error message joey OpenFOAM Paraview & paraFoam 1 October 2, 2006 13:28


All times are GMT -4. The time now is 07:44.