[Gmsh] Compilation with Opencascade fails (Debian Lenny)

David Colignon David.Colignon at ulg.ac.be
Fri Jun 12 08:22:14 CEST 2009


Hi Mike,

as you can see on the g++ compilation command, the OCC includes are searched in -I/usr/include/opencascade/inc instead 
of /usr/include/opencascade

We will have to fix the "./configure" step ...

As a quick hack , can you add in /usr/include/opencascade a symbolic link from "inc" to "/usr/include/opencascade" ?

cd /usr/include/opencascade
ln -s /usr/include/opencascade inc

You can also edit by hand the "variables" file created by ./configure and modify

# All compiler flags except optimization flags
FLAGS= -I/opt -I/opt/include -I/opt/include/FL/images -I/opt/opencascade/inc


Regards,

Dave


-- 
David Colignon, Ph.D.
Collaborateur Logistique du F.R.S.-FNRS
CÉCI - Consortium des Équipements de Calcul Intensif
ACE - Applied & Computational Electromagnetics
Sart-Tilman B28
Université de Liège
4000 Liège - BELGIQUE
Tél: +32 (0)4 366 37 32
Fax: +32 (0)4 366 29 10
WWW:    http://hpc.montefiore.ulg.ac.be/
Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com



Mike B. wrote:
> Hi Dave,
> 
> As you've requested, here is the output from `make' in the Geo directory:
> 
> g++ -g -O2 -I/usr/include/freetype2 -D_THREAD_SAFE -D_REENTRANT 
> -I/usr/include/opencascade/inc -I.../Common -I../Geo -I../Mesh -I../Post 
> -I../Numeric -I../Parser -I../contrib/ANN/include -I../contrib/kbipack 
> -I../contrib/MathEval -I../contrib/gmm  -c OCCVertex.cpp
> In file included from OCCVertex.h:12,
>                  from OCCVertex.cpp:10:
> OCCIncludes.h:17:20: error: config.h: No such file or directory
> OCCIncludes.h:20:25: error: BRep_Tool.hxx: No such file or directory
> OCCIncludes.h:21:26: error: Geom_Curve.hxx: No such file or directory
> OCCIncludes.h:22:28: error: Geom2d_Curve.hxx: No such file or directory
> OCCIncludes.h:23:28: error: Geom_Surface.hxx: No such file or directory
> OCCIncludes.h:24:42: error: GeomAPI_ProjectPointOnSurf.hxx: No such file 
> or directory
> OCCIncludes.h:25:43: error: GeomAPI_ProjectPointOnCurve.hxx: No such 
> file or directory
> OCCIncludes.h:26:25: error: BRepTools.hxx: No such file or directory
> OCCIncludes.h:27:22: error: TopExp.hxx: No such file or directory
> OCCIncludes.h:28:41: error: BRepBuilderAPI_MakeVertex.hxx: No such file 
> or directory
> OCCIncludes.h:29:40: error: BRepBuilderAPI_MakeShell.hxx: No such file 
> or directory
> OCCIncludes.h:30:40: error: BRepBuilderAPI_MakeSolid.hxx: No such file 
> or directory
> OCCIncludes.h:31:36: error: BRepOffsetAPI_Sewing.hxx: No such file or 
> directory
> OCCIncludes.h:32:33: error: BRepLProp_SLProps.hxx: No such file or directory
> OCCIncludes.h:33:35: error: BRepAdaptor_Surface.hxx: No such file or 
> directory
> OCCIncludes.h:34:34: error: Poly_Triangulation.hxx: No such file or 
> directory
> OCCIncludes.h:35:37: error: Poly_Array1OfTriangle.hxx: No such file or 
> directory
> OCCIncludes.h:36:36: error: TColgp_Array1OfPnt2d.hxx: No such file or 
> directory
> OCCIncludes.h:37:29: error: Poly_Triangle.hxx: No such file or directory
> OCCIncludes.h:38:28: error: GProp_GProps.hxx: No such file or directory
> OCCIncludes.h:39:25: error: BRepGProp.hxx: No such file or directory
> OCCIncludes.h:42:22: error: gp_Pnt.hxx: No such file or directory
> OCCIncludes.h:43:22: error: TopoDS.hxx: No such file or directory
> OCCIncludes.h:44:28: error: TopoDS_Solid.hxx: No such file or directory
> OCCIncludes.h:45:31: error: TopExp_Explorer.hxx: No such file or directory
> OCCIncludes.h:47:28: error: BRep_Builder.hxx: No such file or directory
> OCCIncludes.h:53:27: error: TopoDS_Wire.hxx: No such file or directory
> OCCIncludes.h:54:38: error: BRepTools_WireExplorer.hxx: No such file or 
> directory
> OCCIncludes.h:56:42: error: TopTools_IndexedMapOfShape.hxx: No such file 
> or directory
> OCCIncludes.h:62:33: error: BRepLProp_CLProps.hxx: No such file or directory
> OCCIncludes.h:65:33: error: BRepAdaptor_Curve.hxx: No such file or directory
> OCCIncludes.h:72:34: error: IGESControl_Reader.hxx: No such file or 
> directory
> OCCIncludes.h:73:34: error: STEPControl_Reader.hxx: No such file or 
> directory
> OCCIncludes.h:74:28: error: TopoDS_Shape.hxx: No such file or directory
> OCCIncludes.h:75:27: error: TopoDS_Face..hxx: No such file or directory
> OCCIncludes.h:76:33: error: IGESToBRep_Reader.hxx: No such file or directory
> OCCIncludes.h:77:32: error: Interface_Static.hxx: No such file or directory
> OCCIncludes.h:78:41: error: GeomAPI_ExtremaCurveCurve.hxx: No such file 
> or directory
> OCCIncludes.h:79:37: error: Standard_ErrorHandler.hxx: No such file or 
> directory
> OCCIncludes.h:80:32: error: Standard_Failure.hxx: No such file or directory
> OCCIncludes.h:81:40: error: ShapeUpgrade_ShellSewing.hxx: No such file 
> or directory
> OCCIncludes.h:82:30: error: ShapeFix_Shape.hxx: No such file or directory
> OCCIncludes.h:83:34: error: ShapeFix_Wireframe.hxx: No such file or 
> directory
> OCCIncludes.h:84:24: error: BRepMesh.hxx: No such file or directory
> OCCIncludes.h:85:40: error: BRepMesh_IncrementalMesh.hxx: No such file 
> or directory
> OCCIncludes.h:86:26: error: BRepBndLib.hxx: No such file or directory
> OCCIncludes.h:87:23: error: Bnd_Box.hxx: No such file or directory
> OCCIncludes.h:88:29: error: ShapeAnalysis.hxx: No such file or directory
> OCCIncludes.h:89:34: error: ShapeBuild_ReShape.hxx: No such file or 
> directory
> OCCIncludes.h:90:34: error: IGESControl_Writer.hxx: No such file or 
> directory
> OCCIncludes.h:91:34: error: STEPControl_Writer.hxx: No such file or 
> directory
> OCCIncludes.h:92:29: error: StlAPI_Writer.hxx: No such file or directory
> OCCIncludes.h:93:41: error: STEPControl_StepModelType.hxx: No such file 
> or directory
> OCCIncludes.h:94:44: error: ShapeAnalysis_ShapeTolerance.hxx: No such 
> file or directory
> OCCIncludes.h:95:43: error: ShapeAnalysis_ShapeContents.hxx: No such 
> file or directory
> OCCIncludes.h:96:44: error: ShapeAnalysis_CheckSmallFace.hxx: No such 
> file or directory
> OCCIncludes.h:97:54: error: ShapeAnalysis_DataMapOfShapeListOfReal.hxx: 
> No such file or directory
> OCCIncludes.h:98:32: error: BRepAlgoAPI_Fuse.hxx: No such file or directory
> OCCIncludes.h:99:34: error: BRepCheck_Analyzer.hxx: No such file or 
> directory
> OCCIncludes.h:100:23: error: BRepLib.hxx: No such file or directory
> OCCIncludes.h:102:24: error: ShapeFix.hxx: No such file or directory
> OCCIncludes.h:103:37: error: ShapeFix_FixSmallFace.hxx: No such file or 
> directory
> OCCIncludes.h:104:31: error: TopoDS_Compound.hxx: No such file or directory
> OCCIncludes.h:105:31: error: TopoDS_Iterator.hxx: No such file or directory
> OCCIncludes.h:106:38: error: BRepPrimAPI_MakeSphere.hxx: No such file or 
> directory
> OCCIncludes.h:107:50: error: TopTools_ListIteratorOfListOfShape.hxx: No 
> such file or directory
> OCCIncludes.h:108:25: error: Precision.hxx: No such file or directory
> OCCIncludes.h:109:34: error: BRepAlgoAPI_Common.hxx: No such file or 
> directory
> OCCIncludes.h:110:31: error: BRepAlgoAPI_Cut.hxx: No such file or directory
> In file included from OCCVertex.cpp:10:
> OCCVertex.h:18: error: ‘TopoDS_Vertex’ does not name a type
> OCCVertex.h:23: error: ‘TopoDS_Vertex’ has not been declared
> OCCVertex.h: In member function ‘virtual void* OCCVertex::getNativePtr() 
> const’:
> OCCVertex.h:31: error: ‘v’ was not declared in this scope
> In file included from OCCVertex.cpp:11:
> OCCEdge.h: At global scope:
> OCCEdge.h:21: error: ‘TopoDS_Edge’ does not name a type
> OCCEdge.h:22: error: ‘TopoDS_Edge’ does not name a type
> OCCEdge.h:24: error: ‘Geom_Curve’ has not been declared
> OCCEdge.h:24: error: ISO C++ forbids declaration of ‘Handle’ with no type
> OCCEdge.h:24: error: expected ‘;’ before ‘curve’
> OCCEdge.h:25: error: ‘Geom2d_Curve’ has not been declared
> OCCEdge.h:25: error: ISO C++ forbids declaration of ‘Handle’ with no type
> OCCEdge..h:25: error: function ‘Handle’ cannot be declared ‘mutable’
> OCCEdge.h:25: error: expected ‘;’ before ‘curve2d’
> OCCEdge.h:28: error: ‘TopoDS_Edge’ has not been declared
> OCCEdge.h: In member function ‘virtual bool OCCEdge::degenerate(int) const’:
> OCCEdge.h:32: error: ‘BRep_Tool’ has not been declared
> OCCEdge.h:32: error: ‘c’ was not declared in this scope
> OCCEdge.h: In member function ‘virtual void* OCCEdge::getNativePtr() const’:
> OCCEdge.h:38: error: ‘c’ was not declared in this scope
> OCCEdge.h: In member function ‘virtual bool OCCEdge::is3D() const’:
> OCCEdge.h:41: error: ‘curve’ was not declared in this scope
> In file included from OCCVertex.cpp:12:
> OCCFace.h: At global scope:
> OCCFace.h:20: error: ‘TopoDS_Face’ does not name a type
> OCCFace.h:21: error: ‘Geom_Surface’ has not been declared
> OCCFace.h:21: error: ISO C++ forbids declaration of ‘Handle’ with no type
> OCCFace.h:21: error: expected ‘;’ before ‘occface’
> OCCFace.h:26: error: ‘TopoDS_Face’ has not been declared
> OCCFace.h:26: error: ‘TopTools_IndexedMapOfShape’ has not been declared
> OCCFace.h: In member function ‘virtual void* OCCFace::getNativePtr() const’:
> OCCFace.h:37: error: ‘s’ was not declared in this scope
> OCCVertex.cpp: At global scope:
> OCCVertex.cpp:16: error: ‘TopoDS_Vertex’ has not been declared
> OCCVertex.cpp: In constructor ‘OCCVertex::OCCVertex(GModel*, int, int)’:
> OCCVertex.cpp:17: error: class ‘OCCVertex’ does not have any field named ‘v’
> OCCVertex.cpp:20: error: ‘gp_Pnt’ was not declared in this scope
> OCCVertex.cpp:20: error: expected `;' before ‘pnt’
> OCCVertex.cpp:21: error: ‘pnt’ was not declared in this scope
> OCCVertex.cpp: In member function ‘virtual SPoint2 
> OCCVertex::reparamOnFace(const GFace*, int) const’:
> OCCVertex.cpp:76: error: expected initializer before ‘*’ token
> OCCVertex.cpp:77: error: expected initializer before ‘*’ token
> OCCVertex.cpp:79: error: ‘Geom2d_Curve’ was not declared in this scope
> OCCVertex.cpp:79: error: ‘Handle’ was not declared in this scope
> OCCVertex.cpp:79: error: expected `;' before ‘curve2d’
> OCCVertex.cpp:92: error: expected initializer before ‘*’ token
> OCCVertex.cpp:93: error: expected initializer before ‘*’ token
> OCCVertex.cpp:95: error: ‘Geom2d_Curve’ was not declared in this scope
> OCCVertex.cpp:95: error: ‘Handle’ was not declared in this scope
> OCCVertex.cpp:95: error: expected `;' before ‘curve2d’
> make: *** [OCCVertex.o] Error 1
> 
> 
> It seems it is not aware of the files in /usr/include/opencascade
> 
> For example, I made a soft-link of /usr/include/opencascade/config.h in 
> the Geo directory and then the config.h error disappeared (first error). 
> It then complains of not finding BRep_Tool.hxx which is also in
> /usr/include/opencascade/BRep_Tool.hxx
> 
> This is inspite running ./configure --enable-occ 
> --with-occ-prefix=/usr/include/opencascade
> 
> Please advice and thanks for your help,
> Mike.
> 
> --- On *Thu, 6/11/09, David Colignon /<David.Colignon at ulg.ac.be>/* wrote:
> 
> 
>     From: David Colignon <David.Colignon at ulg.ac.be>
>     Subject: Re: [Gmsh] Compilation with Opencascade fails (Debian Lenny)
>     To: "Mike B." <mb78aa at yahoo.com>
>     Cc: gmsh at geuz.org
>     Date: Thursday, June 11, 2009, 8:48 PM
> 
>     the error message was :
> 
>      > g++ -g -O2 -o bin/gmsh -Llib -lGmshFltk -lGmshCommon -lGmshMesh
>     -lGmshPost -lGmshPlugin -lGmshGeo -lGmshCommon -lGmshGraphics
>     -lGmshParser -lGmshNumeric -lGmshTreeBrowser -lfltk_images -lfltk_gl
>     -lfltk -lGLU -lGL -lpng -lGmshANN -lGmshChaco -lGmshMetis
>     -lGmshNetgen -lGmshMathEval -lTKSTEP -lTKSTEP209 -lTKSTEPAttr
>     -lTKSTEPBase -lTKIGES -lTKXSBase -lTKOffset -lTKFeat -lTKFillet
>     -lTKBool -lTKShHealing -lTKMesh -lTKHLR -lTKBO -lTKPrim -lTKTopAlgo
>     -lTKGeomAlgo -lTKBRep -lTKGeomBase -lTKG3d -lTKG2d -lTKAdvTools
>     -lTKMath -lTKernel -lz -llapack  -lf77blas -latlas -lgfortran -lm
> 
>      > /usr/bin/ld: cannot find -lGmshGeo
> 
>      > collect2: ld returned 1 exit status
> 
>      > make: *** [link] Error 1
> 
>     so it seems that the compilation in the Geo directory failed for
>     some reason.
> 
>     Can you  try " cd Geo ; make " and send back the output ?
> 
>     Dave
> 
>