本文记录开发过程中遇到的各种奇怪问题
1:Paraview 5.8.1编译的时候出现错误==“error: fatal error C1002: compiler is out of heap space in pass 2”==
解决方式参考:https://discourse.paraview.org/t/fatal-error-c1002-compiler-is-out-of-heap-space-in-pass-2/3021
具体操作:Disable VTK-m by setting the PARAVIEW_USE_VTKM cmake option to false (you will miss some features in ParaView)
2:WINDOWS上面std::condition_variable::wait_for bug on vs2015&vs2017: https://developercommunity.visualstudio.com/content/problem/438027/unexpected-behaviour-with-stdcondition-variablewai.html
3:PyQT5安装报错
开了代理也不好用,最后用这个命令安装解决
sudo python3 -m pip install pyqt5==5.14.0
然后报错 ModuleNotFoundError: No module named ‘PyQt5.sip’
处理方式,安装老版本的pyqt5
sudo python3 -m pip install pyqt5==5.10.1
报错,命令多执行几次就行了:ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: ‘/home/cpf/.local/bin/rosversion’
Check the permissions.
4:std::numeric_limits::max()报错
处理方式参考https://stackoverflow.com/questions/1394132/macro-and-member-function-conflict
std::numeric_limits::max()修改成 (std::numeric_limits::max)();
5:编译错误,未声明的类型。
具体现象:在Ubuntu上面可以编译过,但是在Windows上报错 “undeclared identifier”。
处理方式:使用Notepad++显示所有字符,将“\r\n”全部替换成“\n”,然后将“\n”再全部替换回“\r\n”。
可能是换行符号引入的编译错误。
6:ifstream读取到文件尾部之后,再重新seek到开头,接下来读取文件内容会失败。
处理方式:读取到文件结尾之后,先用clear清除一下标志位,再开始seek。
7:python3.7调用c++ dll文件失败,找不到模块。
问题原因1:Microsoft Visual C++ 2015 Redistributable未安装。
问题原因2:dllname.dll依赖的其它dll没有加入到环境变量。(这次将VTK相关的dll放置到dllname的相同补录下没有解决问题。os.chdir(“F:\”)也没有解决),将VTK的bin目录加入到环境变量后重启电脑好了。