dunnart
dunnart copied to clipboard
Build dunnart on a Windows 8.1 machine
The compiler, which is the default one, used is msvc2013.
When I was building dunnart in Qt creator, couple of problems come up:
couple of error reported with dll files. It has been temporary resolved by specifying "DEFINES += _AFXDLL LIBAVOID_NO_DLL", under editor/common_options directory, common_options.qmake file, in the win32 little section.
Another errors encountered is about "std", the error message is "F:\dunnart\libcola\colafd.cpp:1247: error: C2589: '(' : illegal token on right side of '::'" and "F:\dunnart\libcola\colafd.cpp:1247: error: C2059: syntax error : '::'". It is resolved by removing the namespace std and :: before max and min function calls.
Next errors about compiling min and max operations not defined. It is resolved by including the "algorithm" header.
The last errors, actually a huge list of errors, For instance, one of the the error messages is "error: C2061: syntax error : identifier 'abs'" with the standard cmath library. I did a bit research, and most of cases, the problem is caused by mixing c header with c++ code, or writing c++ code, but did not name file with cpp extension, which caused system to use c compiler instead of c++ compiler. Back to dunnart case, I guess it could be similar problems with headers, but unfortunately I could not figure out where the problems are.
At the end, the problem is resolved by using MinGW compiler. So what i did was uninstall previous version of Qt, with msvc compiler and reinstall Qt with MinGW and openGL. (openGL is not used here, but MinGW is necessary.) It is bundled. Everything works fine for me now.