找回密码
 注册
查看: 1963|回复: 16

自己编译的 kde3.1 总是 seg fault

[复制链接]
发表于 2003-2-1 00:24:28 | 显示全部楼层 |阅读模式
已经编译了 10 几次的 arts + kdelibs + kdebase ,以及 qt3.1.1,
但是,不论怎样,只要在 kde 安装下面的 lib/kde3/plugins/styles 下面有那些kde 自带的 style,我在启动kde3.1 后,不论什么kde 程序在退出时,都会发生一个 segmentation fault 错误,包括 qtconfig ! 而如果我将 lib/kde3/plugins/styles 改个名,就没事了,当然,也用不了 kde 自带的那些 style 了

我的系统是 LFS 20021222 CVS,除了 LFS 外,安装了kde 需要的包。 host 系统是 mandrake 9。KDE 使用的都是 3.1 final 官方版本,qt 是 3.1.1

编译qt 时使用的configure 参数是:
./configure -prefix /opt/lib/qt-3.1.1 -system-zlib -qt-gif -system-libpng -system-libjpeg -plugin-imgfmt-mng -thread -no-stl -no-xinerama -no-g++-exceptions

请问谁有经验,能否指点一下呢?
多谢
发表于 2003-2-1 00:41:24 | 显示全部楼层
哈,还是 liuspider 等不及装 KDE 3.1,我想等 xfree 4.3 出了再完全重装 Gentoo.

不过 LFS 的问题最好还是去 Linuxsir... 恐怕这里没人用 LFS...

我只给出我的一点建议哈:
你不妨先试不要编译 KDE, 先只装 QT,然后装个只使用 QT 库而不使用 KDE 库的软件(如 SIM-ICQ)
,看一下 SIM-ICQ 是否会 seg fault,以判断到底是 QT 的编译问题还是 KDE 的编译问题。

如果是 QT 的问题,我可以把 Gentoo 的 qt-3.1.1-r1.ebuild 贴出来,你可以参考一下那里面的编译参数。如果 QT 没问题了,那只有 KDE 有问题,咱们再慢慢研究。
回复

使用道具 举报

 楼主| 发表于 2003-2-1 20:01:54 | 显示全部楼层
多谢你的建议,我的尝试如下:运行只需要QT的 qtconfig,如果存在 lib/kde3/plugins/styles 目录的话,就会 seg fault;如果没有那些插件,则一切正常。

QT 都会 seg fault,所以所有的 kde 程序也都会在退出时 seg fault

无奈,我将 qtconfig 编译时添加了 -g3 参数,然后debug,发现,segfault 的地方,是在已经退出 QT 消息循环后,到达 内核清理内存时(具体是说一个叫做 exit.c 的文件,我估计应该是 kernel 中的那个文件)才发生的, 是不是可能因为自己编译的 kernel 的问题呢?(LFS 的kernel 和我现在这个mandrake的都是经过我自定义的,没用的东东全都没有编译)

btw:我也在 linuxsir 上发问了,但是好像现在上不去
回复

使用道具 举报

发表于 2003-2-1 22:27:24 | 显示全部楼层
还是你牛,居然靠调试来判断错误!

看样子我帮不上什么忙了,但我感觉应该不是核心的问题,用 Gentoo/LFS 的人没有一个人不是自定义编译的核心,不应该就你一个人有问题(可能以后还有会有人有类似的事情吧。。。)

我所能帮的也只有把 Gentoo 的 qt ebuild 发给你,参考一下里面的编译参数了。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2003-2-1 22:56:21 | 显示全部楼层
气愤没有还没有 for mandrake 9 的kde3.1 :(  

但我在cooker 上找到了 qt3.1.1 的 src 包,正在编译,如果在 mandrake 下,我也装不上的话,那我就只能归咎于硬件了

多谢你的 ebuild,很有意思,里面的配置参数,与 LFS 以及kde 官方的都有明显的差别的,下次在LFS下编译时,会试试,谢谢了

BTW: 那个文件好像是普通的文本文件吧,我在那里试了好几个 tar 命令参数,就是解不开 (gz 的文件名误导了我
回复

使用道具 举报

 楼主| 发表于 2003-2-1 23:02:42 | 显示全部楼层
忘了说了,强烈建议使用 KDE3。1,比 kde3 有了很大的提高的,不论是速度,显示效果,稳定性,易用性都比 kde3 可以说有质的飞跃的
回复

使用道具 举报

发表于 2003-2-1 23:04:56 | 显示全部楼层
!^_^.....公社的代码不够完善。。。不能上传 .ebuild, .tar, .bz2 的文件。。。所以我用 gzip 压缩了一下才传上来。用 gunzip qt-3.1.1-r1.ebuild.gz 就可以解压缩开了

mdk beta3 出来了,我想它的 KDE 应该是 3.1 正式版吧。
回复

使用道具 举报

 楼主| 发表于 2003-2-2 12:14:38 | 显示全部楼层
但是那个文件我直接使用 vi 就可以打开看了

应该是,但是现在还不想升级啊

不知道 这个最新的beta 使用的X 是什么版本的
回复

使用道具 举报

 楼主| 发表于 2003-2-2 12:22:58 | 显示全部楼层

找到原因了!

找到原因了,http://dot.kde.org/1043423702/1043431003/1043436542/
binutils 的版本太新
很沉痛啊,这真是 “living on the edge”的代价! 太惨了
回复

使用道具 举报

发表于 2003-2-2 16:48:08 | 显示全部楼层
Mandrake Cooker 上不是有KDE 3.1的rpm包吗?干嘛要用src.rpm包编译
回复

使用道具 举报

 楼主| 发表于 2003-2-2 19:00:39 | 显示全部楼层
是的,有,但是没有 QT3.1.1 的 rpm 包啊! 而且,我发现那些 rpm 包都是为 mandrake 9.1 编译的,不是给我们 9 使用的
回复

使用道具 举报

发表于 2003-2-2 19:41:56 | 显示全部楼层
我还是认为在当前版本软件完全够用的情况下,没有必要升级。

一天到晚装装装装得人都烦死了,装完了以后一天到晚还是就用那么几个功能,花了很长的时间却没有什么真正能够有用的知识。。。

嗯。。。这算是“不思进取”吗?
回复

使用道具 举报

 楼主| 发表于 2003-2-2 21:06:29 | 显示全部楼层
呵呵,你试用一下 kde 3.1 吧,真得是有很大的进步的,不论是速度还是易用性

何况,编译是在后台进行的吗,不耽误你干别的事(当然,如果还在同时编译便的东东,就痛苦了)
回复

使用道具 举报

发表于 2003-2-3 00:20:43 | 显示全部楼层
haha,过两天是该换了,今天 rsync 一下,居然又有一大堆东西要更新,得,干脆全部重装。
回复

使用道具 举报

 楼主| 发表于 2003-2-3 15:08:03 | 显示全部楼层
呵呵,更新比重装还是来得快吧

我解决不了这个问题

现在把我的LFS干掉了,改用 gentoo 了
回复

使用道具 举报

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

本版积分规则

GMT+8, 2025-2-11 15:44 , Processed in 0.049786 second(s), 16 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

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