今天给mm安装Ubuntu,一切顺利。装完后重启,在GDM下输入用户名密码后登录,登录框消失后过了几秒机子就死机了。重启N次后问题依旧,在GDM下按Ctrl+Alt+F1切换到虚拟终端下登录,一切正常。
之前从来没遇到过这种情况,在网上查了一下,没有找到答案,只好自己分析了。能正常启动GDM,说明显卡驱动基本是没有问题的;能在CLI下登录,说明也是不硬盘文件损坏或者空间不足;登录后,硬盘灯狂闪了一两秒钟,此时键盘灯还是能控制的,之后才死机,说明是进入桌面后启动了某个东西才死机的。很自然地,Compiz是最大的嫌疑。mm的机子是05年买的,集成显卡,跑不起Compiz很正常。
问题在于,现在进不了桌面,如何禁用Compiz?我只会在系统->外观里换回metacity,却不知道如何在CLI下配置。网上查了一下“禁用Compiz”“Gnome配置窗口管理器”,没有发现什么有价值的东西。
就要放弃的时候,无聊在/home下du发现了一个目录:.gconf/desktop/gnome/applications/window_manager/,用vim打开下面的%gconf.xml文件,果然是compiz,把两个/usr/bin/compiz换成/usr/bin/metacity,保存,切换回图形界面登录,熟悉的桌面终于又出现了~
长期依赖于GUI的后果就是没有GUI的时候束手无策啊……
如果要用 GTK+ 写一些自定义界面的程序(如QQ),免不了要实现一个背景透明的 widget。一个简单的办法是GtkEventBox+GtkImage,不过这种方法太丑陋了点。然而用通常的方法来创建GTK+ widget 的话,会自动给背景填上颜色,设置了 gdk_window_set_back_pixmap (window->window, NULL, FALSE); 也不行。
这两天跑图书馆,做题做不下去了就玩emacs的配置解闷,还没完成,不过还是顺手贴一下好了
GUI是现代调试器的一个必备部分。这个模式为GDB提供了一个GUI,并保持了Emacs的强大功能。
在学校里,老师们只会教C、C++、Java,我们也把它们视为“正统”,好像程序就该是那样的,函数必须按顺序传参数,文字量只能直接使用,缩进是为了好看,对象是封装+继承+多态,方法就是方法属性就是属性……在我们把它们视作理所当然时,还有很多语言有着很精彩的“另类”思想。
通过Eva的源代码简要分析了QQ消息中自定义表情的格式
由于某些需要要编译个64位程序,而机子装的系统是32位。因为不想装上64位系统(麻烦&没空间&得用虚拟机),所以尝试了下在32位下编译。
首先是设置gcc生成64位的目标代码,这倒是好办,用-m64选项就行。然而光是有这一点还不够,编译本身是要链接其他的库的,而64位代码没有办法链接32位的库。
首先是要装上64位的C库,这比较好办,Ubuntu里有libc6-amd64和libc6-dev-amd64这两个包,将其装上。
然后是gcc的64位库,这个比较麻烦,32位Ubuntu里没有提供相应包,因此得到网上去找。我是在http://packages.ubuntu.com上找的,下载amd64架构的包。需要下载的是这两个包子:gcc4.2和libgcc,用归档管理器打开下载下来的deb文件,并打开其中的data.tar.gz包,将其中的.so、.a和.o文件解压到/usr/lib64中(需要root权限,可先解压到/tmp再复制过去)。
然后因为用了C++,所以要装上C++的64位库,这个源里也没有,同样是下载解压。
以上是一些基本的包,在其实中一般不只这些,要根据说明文档下载相应的包解压,而且相应包所依赖的包也要下载解压,所以会很麻烦的,没事就别跨平台编译吧。
最后就要给编译加上-m64参数了,不同的安装脚本添加方法不同,就不多说了。
gladder与代理设置冲突导致Firefox无法启动
用ASP.net Ajax来编写一个Javascript控件 这一部分讲述了控件的定义、注册、初始化及使用
介绍MKV格式的基础:EMBL