Joshua
C++ compilers differ in their ways in which they make C functions such as isnan available. There is a standard way, but there are often also additional "backward compatible" ways, and this can sometimes lead to confusion. In your case, the C++ compiler sees two "different" versions of isnan and thus reports an error.
We have determined compiler options and header flags that make things work for almost all standard operating systems and standard compilers. We have documented these in the simulation factory http://simfactory.org, which can also be directly accessed at https://svn.cct.lsu.edu/repos/numrel/simfactory/branches/PYSIM_DEV/mdb/optionlists/.
What machine, operating system, and compiler are you using? Your best bet is probably to start with the options for a machine most closely to your setup.
-erik
On Wed, Jun 15, 2011 at 4:58 PM, jhar131@cct.lsu.edu wrote:
Hello,
I'm having problems with CarpetMask when I attempt to build a simulation. Included are my error messages. Does anyone have any suggestions?
Preprocessing /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc Compiling /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc: In function ?void CarpetMask::CarpetSurfaceSetup(cGH*)?: /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc:111:19: error: call of overloaded ?isnan(double&)? is ambiguous /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc:111:19: note: candidates are: /usr/include/bits/mathcalls.h:235:1: note: int isnan(double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:558:3: note: bool std::isnan(long double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:554:3: note: bool std::isnan(double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:550:3: note: bool std::isnan(float) /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc:128:19: error: call of overloaded ?isnan(double&)? is ambiguous /home/joshua/Cactus/arrangements/Carpet/CarpetMask/src/mask_surface.cc:128:19: note: candidates are: /usr/include/bits/mathcalls.h:235:1: note: int isnan(double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:558:3: note: bool std::isnan(long double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:554:3: note: bool std::isnan(double) /usr/lib/gcc/x86_64-redhat-linux/4.6.0/../../../../include/c++/4.6.0/cmath:550:3: note: bool std::isnan(float) make[3]: *** [mask_surface.cc.o] Error 1 make[2]: *** [make.checked] Error 2 make[1]: *** [/home/joshua/Cactus/configs/ConfigName/lib/libthorn_CarpetMask.a] Error 2 make[1]: *** Waiting for unfinished jobs....
Sincerely,
Joshua Harris
Users mailing list Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users