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的问题。
Ubuntu安装视频播放软件SMPlayer 14.9.0.7042:http://www.linuxdiyf.com/linux/13432.html
Ubuntu下PPA安装SMPlayer 14.9:http://www.linuxdiyf.com/linux/8196.html
Linux下使SMplayer加载双重字幕:http://www.linuxdiyf.com/linux/7628.html