阅读:34945回复:83

QT5插件问题解决尝试

楼主#
更多 发布于:2017-05-03 09:39
在我的PC上,QT5插件与Nvidia闭源驱动有冲突。一旦启用了Nvidia闭源驱动,QT5插件就会失效。
我不知道我的例子有没有代表性,但是这个问题也很讨厌呀,只好将yong挂载到iBus下面使用。
今天尝试一下编译QT5,看看能不能解决问题。现在做个实录。


总结:

编译环境:

sudo apt-get install nodejs
sudo apt-get install npm
sudo apt-get install nodejs-legacy
sudo apt install libgtk-3-dev
sudo apt install libgtk2.0-dev
sudo apt install libxkbcommon-dev
sudo apt install libibus-1.0-dev
sudo apt install qtbase5-dev libxkbcommon-dev libglib2.0-dev
sudo apt install qtbase5-private-dev qt5-default qtcreator
sudo apt install p7zip-full

将build.js拷到代码包根目录下

然后再进入代码包预建目录:

mkdir -p {llib,cloud,gbk,mb,vim}/{l32,l64}
mkdir -p {im,config}/{l32-gtk3,l32-gtk2,l64-gtk3,l64-gtk2}
mkdir -p im/gtk-im/{l32-gtk3,l32-gtk2,l64-gtk3,l64-gtk2}
mkdir -p im/IMdkit/{l32,l64}
mkdir -p im/qt5-im/l64-qt5


把/install/build.txt里,拷贝32位库的那一句删掉,因为只编译64位版。





编译:

node build.js l64
node build.js -C im/qt5-im
node build.js -C install copy dist

编译出来的7z包,yong-tool.sh是不带可执行权限的,安装时需要加上。

编译成功,QT5插件可以加载,在大家的协作下,这个问题的原因已经查明,关掉数字小键盘即可正常使用,期待周大更新QT5插件。

哈哈,总算解决了。
沙发#
发布于:2017-05-03 09:49
一:编译准备


版主说需要『libgtk-3-dev libgtk2.0-dev libxkbcommon-dev libibus-1.0-dev』这些,还有『nodejs』,挨个儿试一下。


先装nodejs吧


$ sudo apt-get install nodejs






好了,报错出现:


在处理libc-bin (2.23-0ubuntu7) 的触发器时,nvidia-375驱动目录下的动态链接库有问题。
板凳#
发布于:2017-05-03 09:57
在网上查了一下,找到了解决这个动态链接库报错的办法:

~$ sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
~$ sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
~$ sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
~$ sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1

为保险起见,先解决这个问题,再重装一次『nodejs』






卸载『nodejs』


~$ sudo apt autoremove nodejs






再次安装『nodejs』,不再报错,应该是没问题了。

~$ sudo apt-get install nodejs

xdlc
新手上路
新手上路
地板#
发布于:2017-05-03 10:05
看了你的贴,我尝试把nvidia驱动卸载了,没起什么效果,还有其他思路吗
4楼#
发布于:2017-05-03 10:06
xdlc:看了你的贴,我尝试把nvidia驱动卸载了,没起什么效果,还有其他思路吗回到原帖
别着急,我也正在尝试,这个是直播贴,还没有出结论呢。
5楼#
发布于:2017-05-03 10:13
继续安装『nodejs』的相关组件:

~$ sudo apt-get install npm
~$ sudo apt-get install nodejs-legacy

很顺利,没有报错:



6楼#
发布于:2017-05-03 10:26
~$ sudo apt install libgtk-3-dev



~$ sudo apt install libgtk2.0-dev



~$ sudo apt install libxkbcommon-dev

这个,好像系统已经自带了……



~$ sudo apt install libibus-1.0-dev

装完这一个,所有依赖已经都装上了。

7楼#
发布于:2017-05-03 10:32
安装QT5



~$ sudo apt install qtbase5-dev libxkbcommon-dev libglib2.0-dev


8楼#
发布于:2017-05-03 11:51
现在,来下载小小的代码包,解压缩,并将build.js移到yong的代码包根目录下。








9楼#
发布于:2017-05-03 12:05
预建目录:


在代码包的目录下打开终端,用以下命令预建目录。


mkdir -p {llib,cloud,gbk,mb,vim}/{l32,l64}
mkdir -p {im,config}/{l32-gtk3,l32-gtk2,l64-gtk3,l64-gtk2}
mkdir -p im/gtk-im/{l32-gtk3,l32-gtk2,l64-gtk3,l64-gtk2}
mkdir -p im/IMdkit/{l32,l64}
mkdir -p im/qt5-im/l64-qt5
(这里是修正的)
上一页
游客

返回顶部