Open GoogleCodeExporter opened 8 years ago
[deleted comment]
I believe that the error messages due to the TCLAP library package. Could you
try to
get a newer version (1.2.0) at : http://tclap.sourceforge.net/
and basically just uncompress, make and point the main program makefile to the
new
installed directory which previously it points to ./tclap1.1.0/include
The TCLAP library package is basically for parsing program options. Its
contribution
is http://tclap.sourceforge.net/
Please let me know if this update fixes the problem, so that I will update it
in the
next version.
Thank you,
Sittichai
Original comment by jiampojamarn3
on 4 May 2010 at 4:46
Thank you for the suggestion. Still no luck, though. But the error has changed;
I now get:
% make
g++ -O3 -ffast-math -funroll-all-loops -fpeel-loops -ftracer -funswitch-loops
-funit-at-a-time -pthread
-c -I./tclap-1.2.0/include/ mmAligner.cpp -o mmAligner.o
In file included from mmEM.h:4,
from mmAligner.cpp:51:
util.h: In function ‘void convert(const std::string&, T&, bool)’:
util.h:106: error: reference to ‘istringstream’ is ambiguous
./tclap-1.2.0/include/tclap/Arg.h:43: error: candidates are: typedef struct
std::istringstream istringstream
/usr/include/c++/4.4/iosfwd:133: error: typedef struct
std::basic_istringstream<char,
std::char_traits<char>, std::allocator<char> > std::istringstream
util.h:106: error: reference to ‘istringstream’ is ambiguous
./tclap-1.2.0/include/tclap/Arg.h:43: error: candidates are: typedef struct
std::istringstream istringstream
/usr/include/c++/4.4/iosfwd:133: error: typedef struct
std::basic_istringstream<char,
std::char_traits<char>, std::allocator<char> > std::istringstream
util.h:106: error: expected ‘;’ before ‘i’
util.h:109: error: ‘i’ was not declared in this scope
In file included from ./tclap-1.2.0/include/tclap/Arg.h:54,
from ./tclap-1.2.0/include/tclap/SwitchArg.h:30,
from ./tclap-1.2.0/include/tclap/CmdLine.h:27,
from mmAligner.cpp:48:
./tclap-1.2.0/include/tclap/ArgTraits.h: At global scope:
./tclap-1.2.0/include/tclap/ArgTraits.h: In instantiation of
‘TCLAP::ArgTraits<long double>’:
./tclap-1.2.0/include/tclap/ValueArg.h:389: instantiated from ‘void
TCLAP::ValueArg<T>::_extractValue(const std::string&) [with T = long double]’
./tclap-1.2.0/include/tclap/ValueArg.h:349: instantiated from ‘bool
TCLAP::ValueArg<T>::processArg(int*,
std::vector<std::basic_string<char, std::char_traits<char>,
std::allocator<char> >,
std::allocator<std::basic_string<char, std::char_traits<char>,
std::allocator<char> > > >&) [with T = long
double]’
mmAligner.cpp:269: instantiated from here
./tclap-1.2.0/include/tclap/ArgTraits.h:75: error: ‘long double’ is not a
class, struct, or union type
make: *** [mmAligner.o] Error 1
Original comment by nitil...@gmail.com
on 7 May 2010 at 6:52
Sorry for misleading. After Google a while, the error you are experiencing on
the
first post (error: ‘EOF’ was not declared in this scope) is from the new
version of
GCC itself. Please read :
http://www.cyrius.com/journal/gcc/gcc-4.4-include
You can add #include<cstdio> in those files that complained about EOF.
Let me know how it goes, sorry it isn't easy for me to obtain GCC 4.4 to test
on.
Original comment by jiampojamarn3
on 19 May 2010 at 6:16
That was it! With just the one change below it compiles cleanly on gcc 4.4.
Thanks for figuring this out.
Anders
--- mmAligner.cpp.orig 2010-03-25 22:12:42.000000000 +0100
+++ mmAligner.cpp 2010-05-21 09:18:32.066497674 +0200
@@ -44,6 +44,7 @@
#include <iostream>
#include <list>
#include <ctime>
+#include <cstdio>
#include <tclap/CmdLine.h>
Original comment by nitil...@gmail.com
on 21 May 2010 at 7:29
Thank you Anders for confirming and suggesting the actual edit.
Original comment by jiampojamarn3
on 21 May 2010 at 3:33
Original comment by jiampojamarn3
on 21 May 2010 at 3:39
I've got the same messages, but I could compile the code by changing two things
:
- instead of #include <cmath>, use #include <math.h>
- instead of logl, use log function
According to this website (http://publib.boulder.ibm.com/infocenter/zos/v1r12/index.jsp?topic=%2Fcom.ibm.zos.r12.bpxbd00%2Flog.htm), it seems function "logl" is not available in Windows.
Hope this comments can help the others too.
Original comment by kheangs...@gmail.com
on 27 May 2013 at 7:10
Original issue reported on code.google.com by
nitil...@gmail.com
on 29 Apr 2010 at 12:10