smplayer: undefined symbol: _ZN10QTableView13doItemsLayoutEv

7 篇文章 0 订阅

smplayer运行时出现问题: 

undefined symbol: _ZN10QTableView13doItemsLayoutEv

最后决定自己编译源码安装。

1、下载源码

下载地址:http://smplayer.sourceforge.net/en/downloads

我下载的是0.8.6版本。


2、解压源码

$tar xjvf smplayer-0.8.6.tar.bz2

3、编译安装

$cd smplayer-0.8.6/
$make
$sudo make install

(可以看一下源码目录下INSTALL.TXT文件,里面讲解了怎么安装)

最后问题得到解决。哈哈


最后分析一下出现这个问题的原因

undefined symbol: _ZN10QTableView13doItemsLayoutEv

应该是链接库出现问题,所以用ldd命令,看看smplayer使用了哪些qt动态链接库。

$ ldd `which smplayer`| grep "qt"
	libQtScript.so.4 => /run/media/huntinux/F/huntinux_bin/qtsdk-2010.05/qt/lib/libQtScript.so.4 (0xb7433000)
	libQtXml.so.4 => /run/media/huntinux/F/huntinux_bin/qtsdk-2010.05/qt/lib/libQtXml.so.4 (0xb73e8000)
	libQtGui.so.4 => /run/media/huntinux/F/huntinux_bin/qtsdk-2010.05/qt/lib/libQtGui.so.4 (0xb6878000)
	libQtNetwork.so.4 => /run/media/huntinux/F/huntinux_bin/qtsdk-2010.05/qt/lib/libQtNetwork.so.4 (0xb673b000)
	libQtCore.so.4 => /run/media/huntinux/F/huntinux_bin/qtsdk-2010.05/qt/lib/libQtCore.so.4 (0xb645d000)

我记得装完QT开发环境后,我设置了环境变量LD_LIBRARY_PATH。我将新的qt库路径加在了该变量的最前面。

LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

所以默认的库路径发生了改变,导致undefined symbol的问题。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值