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

upgrade to opensuse leap and now problems to install ofext3.0

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

Reply
 
LinkBack Thread Tools Display Modes
Old   June 15, 2017, 12:27
Default linking problems after reinstallation of ofext3.0
  #1
New Member
 
tomdylan's Avatar
 
Tom Dylan
Join Date: May 2015
Posts: 18
Rep Power: 4
tomdylan is on a distinguished road
Dear foamers,

After having upgraded to openSuse Leap I succeeded installing ofext3.0. But I was no able to compile any solver due to some references of the basic packages (mathematicalConstant) keep unresolved:

Code:
Making dependency list for source file boundaries/fixedDisplacementZeroShear/fixedDisplacementZeroShearFvPatchVectorField.C
Making dependency list for source file boundaries/standingWaveTheory/standingWaveTheoryFvPatchScalarField.C
Making dependency list for source file boundaries/interpolateTimeVaryingTotalTraction/interpolateTimeVaryingTotalTractionFvPatchVectorField.C
Making dependency list for source file boundaries/linearVaryingTotalTraction/linearVaryingTotalTractionFvPatchVectorField.C
Making dependency list for source file boundaries/zeroTotalTraction/zeroTotalTractionFvPatchVectorField.C
Making dependency list for source file boundaries/fixedTotalTraction/fixedTotalTractionFvPatchVectorField.C
Making dependency list for source file pDependElastPlastBiotFoam.C
g++ -m64 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=64 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -O3  -DNoRepository -ftemplate-depth-100 -I/home/hector/OpenFOAM/OpenFOAM-3.0.x/src/meshTools/lnInclude -I/home/hector/OpenFOAM/OpenFOAM-3.0.x/src/finiteVolume/lnInclude -I/home/hector/OpenFOAM/OpenFOAM-3.0.x/src/OpenFOAM/global/constants/mathematical -IincrementTractionDisplacement/lnInclude -IlnInclude -I. -I/home/hector/OpenFOAM/OpenFOAM-3.0.x/src/OpenFOAM/lnInclude -I/home/hector/OpenFOAM/OpenFOAM-3.0.x/src/OSspecific/POSIX/lnInclude   -fPIC -c pDependElastPlastBiotFoam.C -o Make/linux64GccDPInt64Opt/pDependElastPlastBiotFoam.o
In file included from pDependElastPlastBiotFoam.C:60:0:
readSoilProperties.H: In function ‘int main(int, char**)’:
readSoilProperties.H:70:39: error: ‘mathematicalConstant’ has not been declared
     scalar k = ((1 + sin(varPhi/180.0*mathematicalConstant::pi))/(1 - sin(varPhi/180.0*mathematicalConstant::pi))).value();
                                       ^
readSoilProperties.H:70:88: error: ‘mathematicalConstant’ has not been declared
     scalar k = ((1 + sin(varPhi/180.0*mathematicalConstant::pi))/(1 - sin(varPhi/180.0*mathematicalConstant::pi))).value();
                                                                                        ^
readSoilProperties.H:72:39: error: ‘mathematicalConstant’ has not been declared
     scalar m = ((1 + sin(varPsi/180.0*mathematicalConstant::pi))/(1 - sin(varPsi/180.0*mathematicalConstant::pi))).value();
                                       ^
readSoilProperties.H:72:88: error: ‘mathematicalConstant’ has not been declared
     scalar m = ((1 + sin(varPsi/180.0*mathematicalConstant::pi))/(1 - sin(varPsi/180.0*mathematicalConstant::pi))).value();
                                                                                        ^
pDependElastPlastBiotFoam.C:77:9: error: ‘solverPerformance’ is not a member of ‘Foam::lduMatrix’
         lduMatrix::solverPerformance solverPerfP;
         ^
pDependElastPlastBiotFoam.C:77:38: error: expected ‘;’ before ‘solverPerfP’
         lduMatrix::solverPerformance solverPerfP;
                                      ^
pDependElastPlastBiotFoam.C:78:9: error: ‘solverPerformance’ is not a member of ‘Foam::lduMatrix’
         lduMatrix::solverPerformance solverPerfDU;
         ^
pDependElastPlastBiotFoam.C:78:38: error: expected ‘;’ before ‘solverPerfDU’
         lduMatrix::solverPerformance solverPerfDU;
                                      ^
pDependElastPlastBiotFoam.C:82:35: error: ‘class Foam::Time’ has no member named ‘controlDic’
         word correct=word(runTime.controlDic t().lookup("correctPlasticity"));
                                   ^
pDependElastPlastBiotFoam.C:98:6: error: ‘solverPerfP’ was not declared in this scope
      solverPerfP = pEqn.solve(); 
      ^
pDependElastPlastBiotFoam.C:101:25: error: no match for ‘operator<<’ (operand types are ‘Foam::Ostream’ and ‘void’)
     Info<< "p_relax = " << p.relax() << " Pa\n";  

and some more code I left
Surprisingly, everything was OK when working under the previous openSuse 13.1

Code:
EXE_INC = \
    -I$(LIB_SRC)/meshTools/lnInclude \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I$(LIB_SRC)/OpenFOAM/global/constants/mathematical \
    -IincrementTractionDisplacement/lnInclude

EXE_LIBS = \
    -lfiniteVolume \
    -llduSolvers \
    -lmeshTools
It looks like some other libs should be included (or the sequence be changed ?). But I have no clue...

Any hints warmly appreciated

Tom

Last edited by tomdylan; June 15, 2017 at 14:11. Reason: title was not conciese enough
tomdylan is offline   Reply With Quote

Old   June 18, 2017, 09:11
Default
  #2
New Member
 
tomdylan's Avatar
 
Tom Dylan
Join Date: May 2015
Posts: 18
Rep Power: 4
tomdylan is on a distinguished road
Somewhat in despair I moved to openFoam ext 4 and made sure that the installation process (under openSuse Leap 42.2) was OK. I successfully managed to compile and to run the plate hole tutorial of the solid mechanics branch.

But when I went to my code, which under oFext3.0 was running fine, an previously unknown error appeared:


Code:
pDependElastPlastBiotFoam.C: In function ‘int main(int, char**)’:
pDependElastPlastBiotFoam.C:77:9: error: ‘solverPerformance’ is not a member of ‘Foam::lduMatrix’
         lduMatrix::solverPerformance solverPerfP;
         ^
pDependElastPlastBiotFoam.C:77:38: error: expected ‘;’ before ‘solverPerfP’
         lduMatrix::solverPerformance solverPerfP;
                                      ^
pDependElastPlastBiotFoam.C:78:9: error: ‘solverPerformance’ is not a member of ‘Foam::lduMatrix’
         lduMatrix::solverPerformance solverPerfDU;
         ^
pDependElastPlastBiotFoam.C:78:38: error: expected ‘;’ before ‘solverPerfDU’
         lduMatrix::solverPerformance solverPerfDU;
                                      ^
pDependElastPlastBiotFoam.C:82:35: error: ‘class Foam::Time’ has no member named ‘controlDic’
         word correct=word(runTime.controlDic t().lookup("correctPlasticity"));
                                   ^
pDependElastPlastBiotFoam.C:98:6: error: ‘solverPerfP’ was not declared in this scope
      solverPerfP = pEqn.solve(); 
      ^
pDependElastPlastBiotFoam.C:101:25: error: no match for ‘operator<<’ (operand types are ‘Foam::Ostream’ and ‘void’)
     Info<< "p_relax = " << p.relax() << " Pa\n";               
                         ^
Apparently the solverPerformance call is unknown/undeclared in the version compiled. The only thing I found out, was that the =solverPerformance=-class is hidden in
=lduMatrix=.

I have absolutely no idea how to handle/correct this kind of problems...

Tom
tomdylan is offline   Reply With Quote

Old   June 25, 2017, 11:41
Default
  #3
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,020
Blog Entries: 39
Rep Power: 109
wyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of light
Quick answer: Replace all occurrences of:
Code:
lduMatrix::solverPerformance
with:
Code:
lduSolverPerformance
wyldckat is offline   Reply With Quote

Old   June 29, 2017, 16:58
Default
  #4
New Member
 
tomdylan's Avatar
 
Tom Dylan
Join Date: May 2015
Posts: 18
Rep Power: 4
tomdylan is on a distinguished road
Thank you very much for this hint, Bruno!

Now the solver is compiled without any errors.

And that was the reason for confusion:

lduMatrix::solverPerformance -> lduSolverPerformance

Is there any documentation out there of the syntax changes during the evolution of o30ext - o40ext?
Next time I might check the errors myself.

Anyway installation of o40x on openSuse Leap 42.2 was successful. Thanks again for your support!

Tom
tomdylan is offline   Reply With Quote

Old   July 2, 2017, 15:13
Default
  #5
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,020
Blog Entries: 39
Rep Power: 109
wyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of lightwyldckat is a glorious beacon of light
Quote:
Originally Posted by tomdylan View Post
Is there any documentation out there of the syntax changes during the evolution of o30ext - o40ext?
Not that I'm aware of. You would have to look at the git history for foam-extend 4.0 in order to see the comments on each commit on what changed.
I knew about this bug fix because I had to do it myself last year for the FSI toolkit.

Quote:
Originally Posted by tomdylan View Post
Anyway installation of o40x on openSuse Leap 42.2 was successful. Thanks again for your support!
You're welcome!
wyldckat is offline   Reply With Quote

Reply

Tags
of3.0x, opensuse leap, unresolved inc

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



All times are GMT -4. The time now is 10:27.