LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1533|回复: 7

编译kde4快崩溃了。。。。。。(已解决)

[复制链接]
发表于 2008-12-19 14:35:56 | 显示全部楼层 |阅读模式
这几天都一直在编译kde4,编译的快崩溃。LFS和X早早的就弄好了,就这个kde4,让我真是没法解决。照着clfs的手册http://cblfs.cross-lfs.org/index.php/KDE4编译的。

单说xine-1.1.5这个版本就编译不过去,到了kdelib,出现的问题如下提示:

[ 16%] Building CXX object kdeui/CMakeFiles/kdeui.dir/jobs/kstatusbarjobtracker.o
/root/kdelibs-4.1.3/kdeui/jobs/kstatusbarjobtracker.cpp:36: warning: unused parameter 'button'
/root/kdelibs-4.1.3/kdeui/jobs/kstatusbarjobtracker.cpp:220: warning: unused parameter 'unit'
/root/kdelibs-4.1.3/kdeui/jobs/kstatusbarjobtracker.cpp:220: warning: unused parameter 'amount'
[ 16%] Building CXX object kdeui/CMakeFiles/kdeui.dir/jobs/kuiserverjobtracker.o
[ 16%] Building CXX object kdeui/CMakeFiles/kdeui.dir/kernel/kapplication.o
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:329:2: error: #error QT_NO_SESSIONMANAGER was set, this will not compile. Reconfigure Qt with Session management support.
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:965:2: warning: #warning This should be already in Qt, check.
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp: In member function 'QString KApplicationPrivate::sessionConfigName() const':
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:331: error: 'class KApplication' has no member named 'sessionKey'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:334: error: 'class KApplication' has no member named 'sessionId'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp: In member function 'void KApplication::commitData(QSessionManager&)':
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:693: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:695: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:725: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:725: error: incomplete type 'QSessionManager' used in nested name specifier
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:727: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:727: error: incomplete type 'QSessionManager' used in nested name specifier
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp: In function 'void checkRestartVersion(QSessionManager&)':
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:755: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:757: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp: In member function 'void KApplication::saveState(QSessionManager&)':
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:766: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:769: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:769: error: incomplete type 'QSessionManager' used in nested name specifier
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:774: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:774: error: incomplete type 'QSessionManager' used in nested name specifier
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:794: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:811: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:831: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:833: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
/root/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:837: error: invalid use of incomplete type 'struct QSessionManager'
/opt/qt4/include/QtGui/qapplication.h:64: error: forward declaration of 'struct QSessionManager'
make[2]: *** [kdeui/CMakeFiles/kdeui.dir/kernel/kapplication.o] Error 1
make[1]: *** [kdeui/CMakeFiles/kdeui.dir/all] Error 2
make: *** [all] Error 2
root:~/kdelibs-4.1.3/build$

16%前面还有警告信息,真搞不定了。
发表于 2008-12-19 15:35:37 | 显示全部楼层
貌似是你的qt在编译的时候出了问题,还有就是不推荐按cblfs的编译,依赖关系太老,很多都没更新。推荐参考arch的pkgbuild来编译(QT和KDE)。我的LFS 6.4上的是arch的pacman,现在正在用kde4 beta2当中,编译过程很顺利。
xine的问题可以google到,大多是gentoo打的patch,基本都能解决。我编译的时候用的是svn的xine和一个gentoo的patch就过了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-19 16:05:04 | 显示全部楼层
Post by blucidy;1926361
貌似是你的qt在编译的时候出了问题,还有就是不推荐按cblfs的编译,依赖关系太老,很多都没更新。推荐参考arch的pkgbuild来编译(QT和KDE)。我的LFS 6.4上的是arch的pacman,现在正在用kde4 beta2当中,编译过程很顺利。
xine的问题可以google到,大多是gentoo打的patch,基本都能解决。我编译的时候用的是svn的xine和一个gentoo的patch就过了。


qt编译过程中,还真没有出现错误,时间太漫长,一个多小时。我也没有守在那看着,如果出现几个警告信息也是可能的。麻烦给个arch的链接先。arch是个发行版,用pkgbuild我的岂不是变成发行版了?难道qt-4.4.3还不够用了吗?我用svn一下qt看看。
回复 支持 反对

使用道具 举报

发表于 2008-12-19 17:09:53 | 显示全部楼层
我BLFS,很顺利,编译完了就能用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-19 18:48:42 | 显示全部楼层
Post by trublemaker;1926417
我BLFS,很顺利,编译完了就能用。


是直接上的qt4编译kde4?
回复 支持 反对

使用道具 举报

发表于 2008-12-19 22:13:19 | 显示全部楼层
同崩溃,折磨了一晚上编完,startx进去后直接报错了。。。。
回复 支持 反对

使用道具 举报

发表于 2008-12-20 19:29:28 | 显示全部楼层
Post by Dennis.Wang;1926383
arch是个发行版,用pkgbuild我的岂不是变成发行版了?

PKGBUILD里面有编译所需的依赖关系和编译参数,只是拿来参考一下,不会变成发行版的。。。
http://repos.archlinux.org/viewv ... 492&view=markup
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-20 21:58:29 | 显示全部楼层
呵呵,终于搞定了。
qt-4.4.3不是可以乱配置参数的,还是老老实实照着qt-copy里的那个Readme.qt-copy来做吧。clfs里的qt教程没有打补丁那步,实际中就造成了问题。
kde4.1.3还是很漂亮的,而且看上去也比较稳定。查到一篇帖子,告诉了改两个文件(xine-1.1.5的),就可以改掉这个bug了。只有装上了xine,才能装kdebase-runtime。接下来准备先把那个什么NetworkManager弄上,看起来用它来驱动无线网卡还比较好用。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表