Q&A-Qt quick emulation layer crashed
Question:QtCreator中打开qml设计模式时候错误:Qt quick emulation layer crashed
Answer:尝试了以下方法:(1)Options中,选择Qt Quick -> Qt Quick设计器 -> QML emulation Layer选择另一种;(2)Options中,选择 环境 -> system -> Environment,添加环境变量 QT_OPENGL=software;
方法2在我的电脑有效。
Q&A-Ubuntu20安装Qt6后编译程序出错
Question:在Ubuntu20上安装了Qt6后,编译程序出现错误:1、Error while building/deploying project…2、cannot find -lGL
Answer:1、如果是直接运行自带的examples,选择 Copy Project and Open方式打开示例工程;2、自己建立的工程出错,执行如下命令进行安装相应的库:
sudo apt-get install build-essential libgl1-mesa-dev
Q&A-ubuntu gcc/g++更新版本问题--Wformat-overflow 和 ld- skipping incompatible
Question:在ubuntu中,之前默认gcc版本为gcc-5,然后make出现错误提示:“-Wformat-overflow”
Answer:这个问题可以更新gcc版本;更新gcc版本方法步骤如下:
sudo apt-get install software-properties-common -y
首先添加ppa到库:
sudo add-apt-repository ppa:ubuntu-toolchain-r/testsudo apt-get update
安装gcc/g++
sudo apt-get install gcc-8 g++-8
刷新db并locate
sudo updatedb && sudo ldconfig完成后命令ls -l /usr/bin/gcc 用Tab补全看下是否有安装的版本;
安装完后,手工更换gcc软连接
cd /usr/binsudo rm g++ gccsudo ln -s g++-8 g++sudo ln -s gcc-8 gcc更新后,再make时候出现错误,库不匹配:/usr/bin/ld: skipp ...
Q&A-pyside2的qml程序中使用QtCharts模块出现运行错误
Question:在pyside2中,qml文件中添加ChartView组件后,运行没有出现窗口并出现如下错误:程序异常结束The process was ended forcefully.xxx crashed.
Answer:替换掉python中创建app对象的代码,即:将 app = QGuiApplication(sys.argv)替换为 app = QApplication(sys.argv)
Q&A-keil工具编写CH559程序出错-ERROR L104- MULTIPLE PUBLIC DEFINITIONS
Question:在keil中编写CH559的程序,除了在main.c文件以外在其他模块中包含ch559.h头文件后,出现编译错误:ERROR L104: MULTIPLE PUBLIC DEFINITIONS
Answer:除了在main中包含CH559.H文件外,其他文件中包含这个头文件CH559.H之前都定义一下 NO_XSFR_DEFINE :
#define NO_XSFR_DEFINE#include “ch559.h”
Q&A-树莓派Pyside2使用Camera模块运行出错-no service found for – “org.qt-project.qt.camera”
Question:在树莓派上使用Pyside2进行Camera程序开发,qml中使用QtMultimedia模块,在运行程序时候出错:
defaultServiceProvider::requestService(): no service found for – “org.qt-project.qt.camera”
Answer:首先树莓派使用Pyside2的QtMultimedia QML组件,需要安装模块:sudo apt install qml-module-qtmultimedia python3-pyside2.qtmultimedia,然后需要安装库:sudo apt install libqt5multimedia5-plugins
Q&A-GD32E230在ADC多通道采集中使用DMA出现数据错位问题
Question:使用GD32E230C8进行多通道数据采集,根据官方给的例子进行修改的代码运行后出现DMA数据错位问题。
Answer:经过测试,发现是使用了校准功能 adc_calibration_enable() 时候就会出现错位,经过测试提供如下两种方法:
(1)不使用校准功能;
(2)需要在配置ADC时候先使用adc_deinit() 或 adc_disable() 复位下再开始配置,这样开启校准功能也没有问题;
Q&A-keil c51编译程序错误-Invalid Base Address
Question:在keil中编写51程序,出现如下编译错误:Invalid Base Address
Answer:这个错误是定义位操作地址时基地址不合法,有效的可以进行位寻址的基地址必须是最后一位为0或8,比如:sfr P1 = 0x90;sbit P1_0 = P1^0;这个定义就是合法的;
sfr P4 = 0xD1;sbit P4_0 = P4^0;这个定义就是不合法的,因为0XD1的sfr地址最低位不是0也不是8,不能位寻址。
Q&A-cadence nc-sim仿真SDF问题-Failed attempt to annotate to non-existent path
Question:使用cadence ncsim工具做数字后仿真,SDF反标失败,此处SDF文件有genus综合工具的write_sdf命令生成,但是使用questa sim仿真是成功的。
Answer:出现问题是由于SDF文件格式问题,解决方法是genus的SDF生成命令改为如下:write_sdf -edges check_edge > xx.sdf即添加 edges参数,即可成功。
Q&A-Qt编译错误-undefined reference to vtable for xxx
Question:Qt编译时候出现如下错误提示:undefined reference to vtable for xxx
Answer:出现此错误大概率是在类定义的h文件使用了Q_OBJECT宏后出现的,尝试以下方式解决:1)在类实现cpp文件底部添加 #include “moc_className.cpp” ;2)将工程先清除一次,然后QtCreator中选择执行qmake,再进行重新编译;