Hello,
With the new version of Qt, I get these errors compiling LibreCad - 2.2.0.alpha Qt Creator 4.4.1 Based on Qt 5.9.2 (MSVC 2015, 32 bit) gcc version 5.3.0 I don't know if its the compiler (gcc) or the source. It compiled ok with the previous version of Qt and an earlier version of gcc. I have to go back to the previous version of Qt. Regards \librecad\src\lib\math\rs_math.cpp:305: error: no matching function for call to 'mu::Parser::DefineConst(const char [3], double)' p.DefineConst("pi",M_PI); ^ \librecad\src\lib\math\rs_math.cpp:306: error: no matching function for call to 'mu::Parser::SetExpr(std::__cxx11::string)' p.SetExpr(expr_copy.toStdString()); ^ \librecad\src\lib\math\rs_math.cpp:312: error: no match for 'operator<<' (operand types are 'std::ostream {aka std::basic_ostream<char>}' and 'const string_type {aka const std::__cxx11::basic_string<wchar_t>}') std::cout << e.GetMsg() << std::endl; ^ \librecad\src\lib\math\rs_math.cpp:312: error: cannot bind 'std::ostream {aka std::basic_ostream<char>}' lvalue to 'std::basic_ostream<char>&&' std::cout << e.GetMsg() << std::endl; ^ |
I am in trouble with the same problem. My OS is win7. I use Qt Creator 4.4.1(based on Qt5.9.3).
\LibreCAD\librecad\src\lib\math\rs_math.cpp:305: error: no matching function for call to 'mu::Parser::DefineConst(const char [3], double)' p.DefineConst("pi",M_PI); ^ \LibreCAD\librecad\src\lib\math\rs_math.cpp:306: error: no matching function for call to 'mu::Parser::SetExpr(std::__cxx11::string)' p.SetExpr(expr_copy.toStdString()); ^ \LibreCAD\librecad\src\lib\math\rs_math.cpp:312: error: no match for 'operator<<' (operand types are 'std::ostream {aka std::basic_ostream<char>}' and 'const string_type {aka const std::__cxx11::basic_string<wchar_t>}') std::cout << e.GetMsg() << std::endl; ^ |
Hello,
I never found a solution. I went back to installing Qt 5.9.1. Regards |
Thank you! After installing Qt 5.9.1, do all those compiling problems disappear? Best regards. 在2017年11月27 19时09分, "mad-hattter [via LibreCAD]"<[hidden email]>写道: Hello,
|
In reply to this post by mad-hatter
Hello, I find out that what causes all these errors is the conversion problem between "std::string" and "std::wstring". Maybe there are ways to set the complier to solve the problem but I don't know how to. I make a few changes to the source code involving two files and the compilation is successful. In the file \LibreCAD\librecad\src\lib\math\rs_math.cpp: In the file \libreCAD\plugins\plotequation\plot.cpp:
|
In reply to this post by qium06
Hello,
"Thank you! After installing Qt 5.9.1, do all those compiling problems disappear?" Not quite. Have a look here:- http://forum.librecad.org/LibreCAD-dev-f4361976.html You need a version of 'Boost' on your hard drive, no need to compile Boost. Regards |
Free forum by Nabble | Edit this page |