[Gmsh] error when compiling under Solaris 8
OSHIMA Takuya
oshima at eng.niigata-u.ac.jp
Tue Apr 24 02:37:49 CEST 2007
Hi,
I had a very similar error when compiling gmsh-2.0.7 on Windows with
--enable-cygwin. In my case the problematic symbol was "_L," which
seems to have been defined somewhere in an unidentified Cygwin system
header file, and the following quick fix worked.
--- gmsh-2.0.7/Mesh/meshGRegionTransfinite.cpp 2007-03-20 07:34:12.000000000 +0
900
+++ gmsh-2.0.7.new/Mesh/meshGRegionTransfinite.cpp 2007-04-09 08:35:02.0000
00000 +0900
@@ -162,6 +162,9 @@
class GOrientedTransfiniteFace {
private:
GFace *_gf;
+#ifdef _L
+#undef _L
+#endif
int _L, _H;
int _permutation, _index;
std::vector<MVertex*> _list;
--
Takuya Oshima
From: Kea <kea031 at gmail.com>
Subject: [Gmsh] error when compiling under Solaris 8
Date: Mon, 23 Apr 2007 18:12:41 +0200
> Hi,
> I'm trying to compile gmsh under Solaris 8 with gcc 3.3.2 (I also tried 4.1.0)
> and I run into this error :
>
> meshGRegionTransfinite.cpp:165: warning: declaration does not declare anything
> meshGRegionTransfinite.cpp :165: error: parse error before numeric constant
> meshGRegionTransfinite.cpp: In constructor `
> GOrientedTransfiniteFace::GOrientedTransfiniteFace()':
> meshGRegionTransfinite.cpp:171: error: parse error before `;' token
> meshGRegionTransfinite.cpp:171: error: class `GOrientedTransfiniteFace' does
> not have any field named `_H'
> meshGRegionTransfinite.cpp: In constructor `
> GOrientedTransfiniteFace::GOrientedTransfiniteFace(GFace*,
> std::vector<GVertex*, std::allocator<GVertex*> >&)':
> meshGRegionTransfinite.cpp:175: error: parse error before `;' token
> meshGRegionTransfinite.cpp:175: error: class `GOrientedTransfiniteFace' does
> not have any field named `_H'
> meshGRegionTransfinite.cpp:177: error: non-lvalue in assignment
> meshGRegionTransfinite.cpp:179: error: `_H' undeclared (first use this
> function)
> meshGRegionTransfinite.cpp :179: error: (Each undeclared identifier is
> reported
> only once for each function it appears in.)
> *** Error code 1
> make: Fatal error: Command failed for target `meshGRegionTransfinite.o'
> Current working directory /Produits/tmp/rla/gmsh- 2.0.7/Mesh
> *** Error code 1
> make: Fatal error: Command failed for target `compile'
>
> It seems like _H is defined as a constant in some .h
> How do I solve this?
>