javafever


我无富贵命,所喜性天然。壁立三千字,家无半吊钱。蝉鸣深巷里,人语短屋前。收拾英雄气,耕作两分田。

2005年12月24日 #

OpenGL学习笔记(二)

关于MinGW中的glut库

Mark Kilgard提供的glut库解压后包含一个.h,一个.def,一个.lib和一个.dll文件。将.h拷贝到MinGW的include目录下,.dll拷贝到windows的系统目录下(windows\system32),.def和.lib文件在eclipse下面不太好使,可以使用reimp工具将.lib文件转换成.a文件。命令如下:
reimp glut32.lib

这样,就会在同一目录下生成一个glut32.def和一个libglut32.a文件,将libglut32.a拷贝到MinGW的lib目录下。同时记得要删除原来的glut库,否则link时可能会出错。

glut主程序框架


#include <GL/glut.h> //头文件。

int main(int argc, char** argv) {
    //初始化glut并建立窗口
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DEPTH | GLUT_SIGNLE | GLUT_RGB);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(200, 200);
    glutCreateWindow(windowTitle);
   
    //注册glut的callback函数
    glutDisplayFunc(display);
    glutReshapeFunc(reshape);
    glutIdleFunc(idle);
    glutKeyboardFunc(keyboard);
   
    //启用光线、深度测试等
    glEnable(GL_LIGHT0);
    glEnable(GL_LIGHTING);
    glEnable(GL_DEPTH_TEST);

    //进入glut主循环
    glutMainLoop();

    return 0;
}

posted @ 2006-12-17 23:06 javaFever 阅读(390) | 评论 (0)编辑 收藏

OpenGL学习笔记(一)

安装开发平台

为了保持开发平台的一致性,采用GCC+eclipse作为开发平台。

在Debian Linux下安装GCC和make就可以了。安装了X环境后,系统中就已经包含了OpenGL的头文件和库文件,但是要使用GLUT的话,还需要安装GLUT的包。我使用的是freeglut3。

$sudo  apt - get install gcc make freeglut3 - dev

在Windows下,GCC的解决方案有很多,我使用的是MinGW,可以下载DevCpp,它包括MinGW和一个C/C++的IDE,因为我使用eclipse作为IDE,所以,我使用MinGW的官方开发工具。到MinGW的官方网站上下载以下包:

binutils

gcc-core

gcc-g++

mingw32-make

mingw-runtime

mingw-utils

w32api

最后再下载调试器gdb。

为了能使用Mark Kilgard提供的glut库(http://www.xmission.com/~nate/glut.html),尽量下载最新的官方版本,该glut库要求binutils版本至少是2.16.91。

http://www.mingw.org/MinGWiki/index.php/Glut页面解释了在MinGW下使用Mark Kilgard的GLUT库会出现的问题及解决的办法。

至于Eclipse和CDT的安装很简单,在Linux下和Windows下也没什么区别。需要注意的是:为了让Eclipse能是别到GCC,需要吧GCC的bin目录加入系统路径PATH中,eclipse会自动查找make.exe,而MinGW的Make程序名叫mingw32-make.exe,所以,要么把mingw32-make.exe更名为make.exe,要么指定eclipse使用mingw32-make.exe进行make。

posted @ 2006-12-16 14:39 javaFever 阅读(699) | 评论 (1)编辑 收藏

解决debian更新安装源失败后造成的包依赖问题

最近发现国内的debian安装源服务器很不稳定,想换一个速度快的,结果apt-get update运行失败后,把安装源换回来再重新安装其他包时都会报包依赖错,apt-get update好像起不了作用。研究后发现,删除/var/cache/apt/下的两个bin文件,再apt-get update就可以了。

posted @ 2006-12-13 19:07 javaFever 阅读(1013) | 评论 (0)编辑 收藏

debian etch中java显示中文

知道java5.0中中文显示的解决办法是在jre/lib/fonts/目录下建立一个fallback目录,然后把中文字体连接进去就可以了,但我找乐半天都没找到这个目录,最后发现用update-alternative --config java指令便可以得到这个目录的信息。

posted @ 2006-11-28 22:31 javaFever 阅读(343) | 评论 (0)编辑 收藏

qemu在linux和windows下tap网络的配置方法

要让qemu虚拟机和宿主机位于同一个网络中被该网络的其他机器访问,就需要使用TUN/TAP的网络方式来启动qemu虚拟机。具体的启动指令是:
qemu -m 192 -hda disk.img -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup
如果是在WindowsXP下面,就不需要script=/etc/qemu-ifup这个启动脚本了,直接将tap0换成网桥的名字即可。

第一步,建立一个虚拟网络接口。
在linux下:
1 # mknod /dev/net/tun c 10 200

在Windows下,有开源的虚拟网卡软件,找一个来装好就行了。

第二步,建立网桥。
在linux下:
修改/etc/network/interface配置文件。此处建立一个名为br0的网桥,先桥接上eth0,在启动qemu时,再桥接上tap0。
 1 # /etc/network/interface
 2 # This file describes the network interfaces available on your system
 3 # and how to activate them. For more information, see interfaces(5).
 4 
 5 # The loopback network interface
 6 auto lo
 7 iface lo inet loopback
 8 
 9 # The bridge network interface(s)
10 auto br0
11 iface br0 inet static
12 address 192.168.1.2
13 network 192.168.1.0
14 netmask 255.255.255.0
15 broadcast 192.168.1.255
16 gateway 192.168.1.1
17 bridge_ports eth0
18 bridge_fd 9
19 bridge_hello 2
20 bridge_maxage 12
21 bridge_stp off

在windowsXP下,在网络属性窗口中,直接将要桥接的两块网卡选中,然后点击鼠标右键,选择“桥”菜单即完成桥接。

第三步,建立qemu-ifup脚本启动qemu时调用。
在linux下:
建立/etc/qemu-ifup脚本文件(参见qemu指令的-net参数)
1 #!/bin/sh
2 
3 sudo /sbin/ifconfig $1 0.0.0.0 promisc up
4 sudo /usr/sbin/brctl addif br0 $1
5 sleep 2
WindowsXP在下不用这个脚本,直接把-net的ifname参数设为网桥的名字即可。

posted @ 2006-11-20 23:54 javaFever 阅读(8182) | 评论 (2)编辑 收藏

Debian+XFCE4+JDK5+Netbeans5.5安装完成

趁这两天有点空,终于把本本重装了。
一切都还顺利,只有在安装Netbeans时需要注意必须先安装bc包才能安装Netbeans。

posted @ 2006-11-18 12:12 javaFever 阅读(378) | 评论 (0)编辑 收藏

都江堰腐败归来

周末和几个驴友去了趟都江堰,从东光小区出发到达目的地共80公里,行驶时间4小时,感觉不错,美得达的车就是好。

posted @ 2006-06-04 22:37 javaFever 阅读(274) | 评论 (0)编辑 收藏

不可以只看外表。

好几天来有个问题一个困惑着我。

在Eclipse里使用WTP插件时,总是不能正确的增加一个Server。当点击“WTP Server Actions”工具图标时,Eclipse响应速度极慢,并且,整个WTP相关的图标都会从工具栏上消失掉。

开始我以为这个问题是由于各个插件使用的WTP版本不一致造成的。由于我主要是想使用Exadel Studio 3.5,所以,我按照Exadel网站上的方法,去掉了其它插件的WTP(主要是JBossIDE和WTP本身),仍然不能解决该问题,于是我准备将错误信息发送给Exadel。

令我吃惊的是,当我使用-debug参数启动Eclipse时,一切都正常!我能通过WTP Server Actions图标创建Web服务器,也能通过其它WTP图标启动、停止和部署应用。当我去掉-debug参数时,问题又回来了!看上去非常的不可思议。当我仔细观察使用与不使用-debug参数时Eclipse的区别时,终于发现当使用-debug参数时,Eclipse没有使用Windows主题!难道会与这个相关?看上去风马牛不相及,不过我还是准备试一下。我把%JAVA_HOME%\bin下的javaw.exe.manifest文件删掉,重新启动,一切OK了!

不可思议!于此我得出的结论是:不能只看重外表!

posted @ 2006-04-27 11:19 javaFever 阅读(281) | 评论 (1)编辑 收藏

VMWare 与 qemu 速度比较

刚刚在我的Debian Testing下面比较了一下VMware与qemu安装Windows2000Professional的速度。

我的机器配置是Compaq Presario2500,512M内存,其中32M划给显存。P4 2.4G,ATI340显卡。Linux内核版本为2.6.12-1-386。

为了保持可比性,我的虚拟机都使用256M内存,4G硬盘,NAT方式接入网络。

先 在qemu7.0(没有使用kqemu加速器)下安装,使用的是雨薇在线提供的无值守安装方式(安装完成后会打上一些系统补丁),整个过程(开始安装到出 现Windows开始菜单)耗时1小时48分钟。然后在VMWare5.0下安装,第一次安装到检测设备时死机,然后改成使用Bridge方式,整个安装 耗时28分钟,性能真的是不可相提并论啊。

在一些辅助功能上,VMWare好象也明显好用得多,比如,VMWare下能使用我的视频头等USB设备,而qemu我还不知道怎么挂上USB设备。对显 卡的模拟VMWare更是没话说,最关键的时全屏时由于支持“自动匹配客户机”,所以在我的液晶下就不会出现花屏,qemu好象没办法。

看来自由软件要走的路还很长。

posted @ 2006-01-01 11:49 javaFever 阅读(5769) | 评论 (4)编辑 收藏

2006年打算

1、工作环境全面转向Linux。
2、深入学习设计模式。
3、深入学习Hibernate,并用它做一个实际的项目。
4、深入学习JSF,并用它做一个实际的项目。
5、复习C++,尤其是对泛型加强了解,并与Java泛型对照学习。
6、严格遵守格律写诗,尽量使用平水韵。
7、能流畅的演奏阿宫回忆。

posted @ 2006-01-01 09:56 javaFever 阅读(253) | 评论 (0)编辑 收藏

出差回来了

平安夜,我生日的前一天,从长沙回到成都,走进住所,面对空荡荡的房间,感觉就象从一个客栈到了另一个客栈。

posted @ 2005-12-24 21:42 javaFever 阅读(140) | 评论 (0)编辑 收藏