CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Installation (http://www.cfd-online.com/Forums/openfoam-installation/)
-   -   wmake error: file 'Make/linux64Gcc44DPOpt/objectFiles' could not be created (http://www.cfd-online.com/Forums/openfoam-installation/70318-wmake-error-file-make-linux64gcc44dpopt-objectfiles-could-not-created.html)

l_r_mcglashan November 20, 2009 08:02

wmake error: file 'Make/linux64Gcc44DPOpt/objectFiles' could not be created
 
Hello everyone,

I cloned the OF-1.6 Git repository and downloaded the Third Party stuff. When I run Allwmake (using gcc-4.4.2 on 64bit Fedora 12) on the 1.6.x directory I get the following errors to do with wmake:

Code:

Note: ignore spurious warnings about missing mpicxx.h headers
+ WM_OPTIONS=linux64Gcc44DPOptOPENMPI
+ wmake libso mpi
'/home/lrm29/OpenFOAM/OpenFOAM-1.6.x/lib/linux64Gcc44DPOpt/openmpi-1.3.3/libPstream.so' is up to date.
+ wmake libo OSspecific/POSIX
'/home/lrm29/OpenFOAM/OpenFOAM-1.6.x/lib/linux64Gcc44DPOpt/libOSspecific.o' is up to date.
+ wmake libso OpenFOAM
linux64Gcc44DPOpt/options:6: *** missing separator.  Stop.
wmake error: file 'Make/linux64Gcc44DPOpt/objectFiles' could not be created
+ wmake libso lagrangian/basic
SOURCE=indexedParticle/indexedParticleCloud.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -O3  -DNoRepository -ftemplate-depth-40  -IlnInclude -I. -I/home/lrm29/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude -I/home/lrm29/OpenFOAM/OpenFOAM-1.6.x/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64Gcc44DPOpt/indexedParticleCloud.o
'/home/lrm29/OpenFOAM/OpenFOAM-1.6.x/lib/linux64Gcc44DPOpt/liblagrangian.so' is up to date.
+ wmake libso triSurface
linux64Gcc44DPOpt/options:6: *** missing separator.  Stop.
wmake error: file 'Make/linux64Gcc44DPOpt/objectFiles' could not be created

The OpenFOAM Make/options looks like:

Code:

EXE_INC = \
    -I$(WM_THIRD_PARTY_DIR)/zlib-1.2.3

LIB_LIBS = \
    $(FOAM_LIBBIN)/libOSspecific.o \
    -L$(FOAM_LIBBIN)/dummy -lPstream \
    -lz

The OpenFOAM linux64GccDPOpt/options file looks like:

Code:

# 1 "options"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "options"
EXE_INC =
    -I$(WM_THIRD_PARTY_DIR)/zlib-1.2.3

LIB_LIBS =
    $(FOAM_LIBBIN)/libOSspecific.o
    -L$(FOAM_LIBBIN)/dummy -lPstream
    -lz

Does anyone have an idea what this missing separator error with wmake means?

Thanks.

l_r_mcglashan November 23, 2009 06:22

Update: There is something weird going on with the separators (you might say 'duh', looking at the error messages) that wmake generates in the options file. If I manually correct the options file created in Make/linux64GccDPOpt/, and then run wmake, it compiles fine.

l_r_mcglashan November 27, 2009 10:58

SOLVED

It was something to do with 'cpp'. The system 'cpp' with GCC 4.4.2 on Fedora 12 screws up the separators.

Fix:

Edit wmake/rules/linux64Gcc/general so that CPP = ThirdParty-1.6/gcc-4.3.3/platforms/bin/cpp instead of /lib/cpp.

auvinen January 5, 2010 12:34

Odd problem
 
Quote:

Originally Posted by l_r_mcglashan (Post 237955)
SOLVED

It was something to do with 'cpp'. The system 'cpp' with GCC 4.4.2 on Fedora 12 screws up the separators.

Fix:

Edit wmake/rules/linux64Gcc/general so that CPP = ThirdParty-1.6/gcc-4.3.3/platforms/bin/cpp instead of /lib/cpp.

Hi Laurence,

I'm facing exactly the same problem on my Fedora 12: make complains about missing separators with every single linux64GccDPOpt/options file. It seems as if the files have been corrupted in some way -- the TAB characters have gone missing or something. The only way I can make things work is by manipulating the files by hand. I tried your Fix, but I cannot get things to work. Could you please elaborate a little on what you did after you edited the rules file in wmake?

I'm trying to compile 1.6 and 1.5-dev on my new machine and I have the same problem with both.

Gratefully,

- mikko

l_r_mcglashan January 5, 2010 13:12

Have you done 'wclean' before redoing wmake? wmake searches for the folder Make/linuxGccblahblah and the files in it before executing.

auvinen January 7, 2010 05:53

Solved indeed
 
Quote:

Originally Posted by l_r_mcglashan (Post 241560)
Have you done 'wclean' before redoing wmake? wmake searches for the folder Make/linuxGccblahblah and the files in it before executing.

That's the ticket! Apparently I had not done 'wclean' before running wmake again. Everything works fine now. Thank you very much.

Just to clarify the issue for potential readers, this problem arose with me irrespective of the compiler choice (compilerInstall=System/OpenFOAM) in settings.sh; wmake tries to utilize the system cpp by default.

Good work Laurence!

l_r_mcglashan January 7, 2010 09:49

Glad it was of use to you! Problems like this are why Fedora is so much fun. ;). It's a poor workaround really, at least it gets the job done.

kokkonee January 13, 2010 18:18

OpenFOAM-1.5-dev: Make/linux64GccDPOpt/objectFiles' could not be created
 
Hello!

I am getting the same error with OpenFOAM-1.5-dev (I need the GGI) on Fedora 12 (64-bit) and Ubuntu 9.10 (32-bit) as mentioned here.

This is the basic form that I have tried:

First got these:
flex
binutils
binutils-dev
cmake
gcc-c++
qt4

1)
Get the OpenFOAM-1.5-dev and Thirdparty files for 1.5-version:
svn co https://openfoam-extend.svn.sourcefo...enFOAM-1.5-dev OpenFOAM-1.5-dev

http://sourceforge.net/projects/foam....gtgz/download
http://sourceforge.net/projects/foam....gtgz/download
tar xzf ThirdParty.General.gtgz
tar xzf ThirdParty.linuxGcc.gtgz

2)
changed:
OpenFOAM-1.5-dev/etc/settings.sh
#compilerInstall=OpenFOAM
compilerInstall=System
to:
compilerInstall=OpenFOAM
#compilerInstall=System

3)
Added $HOME/.bashrc the following line:
source $HOME/OpenFOAM/OpenFOAM-1.5-dev/etc/bashrc
and sourced (or opened new terminal)

4) Have done
./Allwmake >& log_Allwmake

The log can be found here:
http://www.students.tut.fi/~kokkonee/OpenFOAM/log_Allwmake

In addition I have tried
i) FIX up for Ubuntu 9.10

cd ~/OpenFOAM/ThirdParty/gcc-4.3.1/platforms/linux/lib
mv libstdc++.so.6 libstdc++.so.6.orig
ln -s /usr/lib/libstdc++.so.6.0.13 libstdc++.so.6
mv libgcc_s.so.1 libgcc_s.so.1.orig
ln -s /lib/libgcc_s.so.1

ii) and with Fedora 12
http://www.cfd-online.com/Forums/ope...uccessful.html

If someone could please help me with this, I am clearly missing something and I and confused from all the things I have read and tried...

BR.
Eero Kokkonen
eero.kokkonen(at)tut.fi

auvinen January 14, 2010 05:12

Eero,

Referring to the Fedora 12 problem, you're looking at a fix to the "missing separator" issue on this thread. I was able compile both 1.5-dev and 1.6 on F12 after I followed Laurence's recipe on changing the cpp used by wmake. ... Just remember to run wclean after you make the change.

- mikko

l_r_mcglashan January 14, 2010 05:22

Although I would now use the fix of adding the 'P' option to the cpp command discussed in the following thread:

http://www.cfd-online.com/Forums/ope...dora-12-a.html

auvinen January 14, 2010 05:50

Yes, that's a much nicer fix.Thanks again.
- mikko

kokkonee January 17, 2010 08:28

still problems...
 
Hi!

I have tried the -P option suggested in this thread, but it is not working for me (fedora 12, 64-bit).

I started from the beginning (deleted all files) and did the following:

1)
Get the OpenFOAM-1.5-dev and Thirdparty files for 1.5-version:
svn co https://openfoam-extend.svn.sourcefo...enFOAM-1.5-dev OpenFOAM-1.5-dev

http://sourceforge.net/projects/foam....gtgz/download
http://sourceforge.net/projects/foam....gtgz/download
tar xzf ThirdParty.General.gtgz
tar xzf ThirdParty.linuxGcc.gtgz

2)
changed:
OpenFOAM-1.5-dev/etc/settings.sh
#compilerInstall=OpenFOAM
compilerInstall=System
to:
compilerInstall=OpenFOAM
#compilerInstall=System

3)
Added $HOME/.bashrc the following line:
source $HOME/OpenFOAM/OpenFOAM-1.5-dev/etc/bashrc
and sourced (or opened new terminal)

4)
Compiled the Qt-4.3.5 version
and added the following lines to the ~/OpenFOAM/OpenFOAM-1.5/etc/bashrc at the very end

# set QT related variables
QT=~/OpenFOAM/ThirdParty/Qt-4.3.5
export PATH=$QT/bin:$PATH
export LD_LIBRARY_PATH=$QT/lib:$LD_LIBRARY_PATH

Have you guys done this with your Fedora distributions? I read that people have got everything working with this (http://www.cfd-online.com/Forums/ope...am-ubuntu.html). I also tried without this, not working...

5)
I modified the file: OpenFOAM-1.5-dev/wmake/rules/linux64Gcc/general

CPP = /lib/cpp $(GFLAGS) -P
LD = ld -A64

PROJECT_LIBS = -l$(WM_PROJECT) -liberty -ldl
include $(GENERAL_RULES)/standard
include $(RULES)/X
include $(RULES)/c
include $(RULES)/c++
include $(GENERAL_RULES)/cint


Isn't this the correct file in my case (though I also tried the OpenFOAM-1.5-dev/wmake/rules/linuxGcc/general -file)?

6) Did
./Allwmake >& log_Allwmake

Still got these wmake errors:

wmake error: file 'Make/linux64GccDPOpt/objectFiles' could not be created
make[1]: *** [setFields] Error 1
linux64GccDPOpt/options:6: *** missing separator. Stop.
wmake error: file 'Make/linux64GccDPOpt/objectFiles' could not be created
make[1]: *** [mapFields] Error 1
make[1]: Target `application' not remade because of errors.
make: *** [preProcessing] Error 2
make: Target `application' not remade because of errors.
+ '[' '' = doc ']'

I have abandoned trying with Ubuntu 9.10 and managed to compile OpenFOAM-1.5-dev on Fedora 10 but still have issues with paraFOAM (reader for the file cavity.OpenFOAM cannot be found while testing the tutorials)

Have I done something wrong or missing some package, obviously something's not right? Any ideas?

By the way, the 'wclean'-command produces:
wclean error: 'Make' directory does not exist

And have you modified the (extra?) '-' in 'ParaView3.3-cvs' in any way and if you have, what have you done exactly? I am referring to
http://www.cfd-online.com/Forums/ope...foam15dev.html

-Eero

l_r_mcglashan January 18, 2010 05:40

Things here I can maybe help with:

2) I actually used the compiler that came with Fedora 12.

4) Paraview can be difficult to set up. Can you run 'glxgears'? All my problems were related to that not working.

5) Yes, that's the correct file.

6) wclean only works if there is a make directory. If you're trying to compile the whole thing then you need to do a wcleanAll. You need to do that before running Allwmake again.

I haven't actually compiled the -dev version, I may try later.

mihir1310 March 11, 2010 13:29

Quote:

Originally Posted by l_r_mcglashan (Post 237320)
Update: There is something weird going on with the separators (you might say 'duh', looking at the error messages) that wmake generates in the options file. If I manually correct the options file created in Make/linux64GccDPOpt/, and then run wmake, it compiles fine.

I m having the same trouble compiling a code as I add lagrangian particle classes to it . Since Im running on a cluster I may not have the access to be able to edit the wmake/linux64/general file.
You said you could manually edit the Make/linux64GccDPOpt/options file. here is my options file
Code:

# 1 "options"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "options"
EXE_INC = -I$(LIB_SRC)/finiteVolume/lnInclude




EXE_LIBS = -lfiniteVolume

Could you elaborate what were those changes ?

l_r_mcglashan March 12, 2010 06:26

I strongly suggest that you add the -P option to cpp in your wmake rules, or get your system administrator to do so, otherwise you'll have to manually edit every time you use wmake!

It was either the '\' missing from the end of lines, or a tab/carriage return missing at the end of lines.

lakeat September 25, 2010 17:45

"-P" is a good solution!

-P: Inhibit generation of linemarkers in the output from the preprocessor. This might be useful when running the preprocessor on something that is not C code, and will be sent to a program which might be confused by the linemarkers.

l_r_mcglashan September 26, 2010 10:24

It's been added to the 1.7 release.

elham usefi June 14, 2016 11:56

Hi guys!
i had D same problem

Code:

*** missing separator.  Stop.
wmake error: file 'Make/linux64GccDPOpt/objectFiles' could not be created in /home/elham/OpenFOAM/elham-2.4.0/applications/solvers/2

for those who have the same problem :D I solved it simply by adding space and backslash (\) at the end of the lines in Make/option file in EXE_INC = \ part :confused: (except for the last line)


All times are GMT -4. The time now is 21:28.