【已解决】qt 调用外部应用报错 QWSLock::down(): Invalid argument QWSLock::up(): Invalid argumen

在ARM平台上运行Qt4.8时,使用QProcess启动外部应用b会导致QWSLock错误:Invalid argument。这被确认为一个Qt4.8的bug。解决方法包括参考特定的在线讨论并修改Qt源码,或者使用提供的脚本文件patch_qt4.8.6.tar.gz进行修复。
摘要由CSDN通过智能技术生成

qt4.8 再arm上运行

外部调用b程序
QProcess *pro = new QProcess;  
pro->start("b"); 

会一直报错打印:

 QWSLock::down(): Invalid argument

 QWSLock::up(): Invalid argumen

通过网上查阅资料了解到是qt4.8的一个bug,修改qt源码文件重新编译就行了。


参考:http://lists.openmoko.org/pipermail/community/2012-November/067806.html

直接使用我做的脚本文件也行,自行修改源码也行;

1.脚本文件

脚本文件下载地址:稍后再上传!

下载patch_qt4.8.6.tar.gz 解压到qt-everywhere-opensource-src-4.8.6/中便可;(其他qt4.8的版本的没试过,我觉得应该都一样);

2.源码修改

‘-’代表注释掉 ‘+’代表修改或添加

diff --git a/src/gui/embedded/qwslock.cpp b/src/gui/embedded/qwslock.cpp
index 9914a24..1055785 100644
--- a/src/gui/embedded/qwslock.cpp
+++ b/src/gui/embedded/qwslock.cpp
@@ -83,9 +83,13 @@ QWSLock::QWSLock(int id) : semId(id)
     QWSSignalHandler::insta
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值