Q&A-rust问题-Blocking waiting for file lock on package cache
Question:在编写rust程序时候,执行cargo build后显示Blocking waiting for file lock on package cache,一直等待。
Answer:在C盘用户文件夹下,即C:\用户\用户名.cargo.package-cache 删除该文件后再次执行cargo build
Q&A-centos7 虚拟机Vmware共享文件夹不出现文件
Question:在VMware虚拟机中安装好centos7后,共享文件夹设置好了,但是在/mnt/hgfs下没有文件夹出现。
Answer:先确认已经安装好VMware-tools,命令:vmware-hgfsclient,再设置好共享目录,重启后设置如下命令:– 切换到root:su– 执行该命令:/usr/bin/vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other– 现在到共享目录:cd /mnt/hgfs– 执行ls后可以看到共享文件了
Q&A-Golang GUI库qamel在windows上使用问题
Question:qamel为Golang的qml绑定gui库,在windows上使用时候遇到一些问题,主要是最后一步qamel build的时候出错,问题和解决方法已经提交issue说明:https://github.com/go-qamel/qamel/issues/33#issue-670535107
Answer:1、使用Goland IDE,编译时候使用Terminal 为cmder;2、$GOPATH 目录,在Goland的 go path设置中只设置一个目录;3、profile setup 设置与环境变量中的Qt版本要一致,选择32bit或者64bit对应。
Q&A-golang连接数据库postgresql出错sql- unknown driver
Question:使用golang连接postgresql数据库出错,使用的库为:”github.com/jmoiron/sqlx”
执行:sqlx.Connect 出现如下错误信息:
sql: unknown driver “postgres” (forgotten import?)
Answer:解决方法如下:import _ “github.com/lib/pq”这里需要这个数据库驱动,导入使用符合 “_” 表示只初始化不使用它。
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,再进行重新编译;
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-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-GD32E230在ADC多通道采集中使用DMA出现数据错位问题
Question:使用GD32E230C8进行多通道数据采集,根据官方给的例子进行修改的代码运行后出现DMA数据错位问题。
Answer:经过测试,发现是使用了校准功能 adc_calibration_enable() 时候就会出现错位,经过测试提供如下两种方法:
(1)不使用校准功能;
(2)需要在配置ADC时候先使用adc_deinit() 或 adc_disable() 复位下再开始配置,这样开启校准功能也没有问题;
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-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”