Hello all, Here is a small
Here is a small adjustment proposed to OpenFOAM 1.4 source code.
File : OpenFOAM-1.4/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L
Line : 169:
Original source code: word solidName(string::validate<word>(YYText()));
Proposed change : word solidName(Foam::string::validate<word>(YYText()));
Problem description :
SuSE 10.1 comes with flex++ version 2.5.31-16
With an older version of flex++ (version 2.5.4a-33 from RedHat Fedora Core 3), line 169 generates the following error messages when parsed through flex++ while compiling the library triSurface:
triSurface/interfaces/STL/readSTLASCII.L:169: error: reference to "string" is ambiguous
/home/math/pub/OpenFOAM/OpenFOAM-1.4/src/OpenFOAM/lnInclude/string.H:64: error: candidates are: class Foam::string
/home/math/pub/OpenFOAM/linux/gcc-4.1.2/lib/gcc/i686-pc-linux-gnu/4.1.2/../../.. /../include/c++/4.1.2/bits/stringfwd.h:60: error: typedef struct std::basic_string<char, std::char_
traits<char>, std::allocator<char> > std::string
triSurface/interfaces/STL/readSTLASCII.L:169: erreur: expected primary-expression before token
The solution is quite simple: you just need to tell flex++ which "flavor" of the class string you need; in this case, we need Foam::string.
The proposed patch should work for any version of flex++.
Good point, we noticed a simil
Good point, we noticed a similar problem when a new version of the fluentMeshToFoam we are developing was compiled on RedHat. Did you notice any problems compiling any of the other .L files in 1.4?
Nope, the rest of 1.4 compiled
Nope, the rest of 1.4 compiled just fine on that RedHat system.
Still need to adjust for the "demangle.h" problem on non Suse systems, but the solution to that problem is now well documented on this mailing list, and in the recompilation Howto on openfoamwiki.net.
|All times are GMT -4. The time now is 09:35.|