runsisi

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  45 随笔 :: 15 文章 :: 26 评论 :: 0 Trackbacks

#

适用于fedora 12, i386平台,Virtualbox 3.1.2 OSE版,其他环境我不保证能正常编译/安装/使用。

注意:该脚本没有加载另外两个内核模块,请参考下一篇《fedora 12 virtualbox 3.1.2_OSE 驱动模块加载》(2010-01-11 runsisi@HUST)。

由于学校是教育网,上国外网几乎是不可能,但自己经常要去国外网下/看点什么东西,很麻烦,幸亏有搜狗,但问题是搜狗没有linux版本,决定装一个虚拟机,VMware显然不适合我这1G内存的机器,况且还是笔记本。
Virtualbox的官方有很多种格式的binary下载,当然也不缺rpm,问题是官方有点变态,给出的不是直接的下载地址,不能另存为,直接点链接要不是出来迅雷,要不就出来kmplayer,不知道kmplayer怎么跟rpm关联到一块了,在kmplayer的文件关联里还竟然没找到rpm,算了,下不了rpm还是直接下源代码自己编译吧。

安装要求:
这个自己configure就知道了,下边是我configure的输出:
Checking for environment: Determined build machine: linux.x86, target machine: linux.x86, OK.                                                                   
Checking 
for kBuild: found, OK.                                                 
Checking 
for gcc: found version 4.4.2, OK.                                      
Checking 
for as86: found version 0.16.17, OK.                                   
Checking 
for bcc: found version 0.16.17, OK.                                    
Checking 
for iasl: found version 20090123, OK.                                  
Checking 
for xslt: found, OK.                                                   
Checking 
for pthread: found, OK.                                                
Checking 
for libxml2: found version 2.7.6, OK.                                  
Checking 
for libxslt: found version 1.1.26, OK.                                 
Checking 
for libIDL: found version 0.8.13, OK.                                  
Checking 
for ssl: found version OpenSSL 1.0.0-beta4 10 Nov 2009, OK.            
Checking 
for libcurl: found version 7.19.7, OK.                                 
Checking 
for zlib: found version 1.2.3, OK.                                     
Checking 
for libpng: found version 1.2.39, OK.                                  
Checking 
for SDL: found version 1.2.13, OK.                                     
Checking 
for X libraries: found, OK.                                            
Checking 
for Xcursor: found, OK.                                                
Checking 
for Xmu: found, OK.                                                    
Checking 
for Mesa / GLU: found version 1.2, OK.                                 
Checking 
for Qt4: found version 4.5.3, OK.                                      
Checking 
for Qt4 devtools: found version 4.5.3, OK.
Checking 
for python support: found version 2.6.2, OK.
Checking 
for static stc++ library: found, OK.
Checking 
for Linux kernel sources: found version 2.6.31, OK.
Checking 
for ALSA: found version 1.0.22, OK.
Checking 
for PulseAudio: found version 0.9.21 API version 12, OK.
Checking 
for libcap library: found, OK.
Checking 
for compiler.h: compiler.h not found, OK.

缺少什么包它会提示的,一般都是devel包,其中as86在fedora中是包含在dev86下,在ubuntu中是包含在bin86下。
注意:configure时添加--disable-hardening选项,官方说hardening是一个feature不是bug,但如果不disable,我是死都不能成功运行的,网上随便一搜就能搜到关于这个问题的求助,反正依我使用google的能力我是解决不了的。

编译:
configure之后会有提示你接下来要输入的两条命令,如下所示。
source /home/runsisi/Desktop.home/VirtualBox-3.1.2_OSE/env.sh
kmk
第一条的路径每个人都是不同的,你直接复制它给出来的就好了。

编译内核模块:
进入到源代码的如下目录下,进行常规的编译操作,至于sudo之类的命令我就不提了。
cd ./out/linux.ARCH/release/bin/src    # ARCH depends on the architecture of your system
make
make install

加载模块:
modprobe vboxdrv

创建vboxusers组,并将自己加入到该用户组,将设备文件所属的用户组改为vboxusers。
groupadd vboxusers    # Requires root.
usermod 
--G vboxusers USERNAME    # USERNAME is your account username who should have accesses to VirtualBox,for example:usermod --G vboxusers runsisi
chown root:vboxusers 
/dev/vboxdrv

注销并重新登录,查看自己是否在vboxusers组下,可以使用groups命令或者查看/etc/group文件。

创建自动加载脚本:
如下所示,保存为/etc/init.d/vbox,并确保该文件是可执行的。
#!/bin/bash
### BEGIN INIT INFO
# Provides: vbox
# Required
-Start: $syslog $local_fs
# Required
-Stop: $syslog $local_fs
# Default
-Start: 2 3 4 5
# Default
-Stop: 0 1 6
# Short
-Description: The Virtual Box kernel module
# Description: The Virtual Box kernel module
### END INIT INFO

start () {
        echo 
-n $"Starting Virtual Box: "
        modprobe vboxdrv
        sleep 
1
        [ 
-/dev/vboxdrv ] && chown root.vboxusers /dev/vboxdrv && echo " OK"
        [ 
! -/dev/vboxdrv ] && echo "Failed"
        
return 0
}

stop () {
        echo 
-n $"Stopping Virtual Box: "
        [ 
-/dev/vboxdrv ] && rmmod vboxdrv && echo " OK"
        [ 
! -/dev/vboxdrv ] && echo
        
return 0
}

restart() {
        stop
        start
}

case $1 in
        start)
                start
        ;;
        stop)
                stop
        ;;
        restart)
                restart
        ;;
        status)
                [ 
-/dev/vboxdrv ] && echo "Virtual Box is loaded"
                [ 
! -/dev/vboxdrv ] && echo "Virtual Box is not loaded"
        ;;
        
*)

        echo $
"Usage: vbox {start|stop|restart|status}"
        exit 
3
esac

exit 
0

添加服务:
chkconfig --add vbox

完成安装,创建菜单:
将VirtualBox-3.1.2_OSE/out/linux.x86/release/目录下的bin文件夹复制到/usr/local/目录下,这个命名什么的基本上是无所谓的。
cp -prf bin /usr/local/VirtualBox
ln 
-/usr/local/VirtualBox/VirtualBox /usr/local/bin/VirtualBox
创建菜单的方法kde和gnome是不同的,但都很简单,这里就不提了。

使用:
装好系统后,不管是VMware还是Virtualbox都是需要装驱动的,也即GuestAdditions,这个我不知道,也不想知道如何编译了,这个东西是需要windows下的编译平台的,因为你是要编译windows下使用的驱动,网上直接有现
成的编译好了的下载,自己google吧。
给个地址:http://code.google.com/p/virtual-box-windows-guest-additions-installer/
下边是该项目的介绍:
This project provides a packaged version of the Windows Guest Addition tools for VirtualBox OSE. This is provided so that users will not have to create a Windows build environment just to build the guest additions.

下面是我装好后的截图:





runsisi@HUST

posted @ 2010-01-11 20:40 runsisi 阅读(2553) | 评论 (0)编辑 收藏

为什么会这样子?
反思!
it's time!
posted @ 2010-01-11 11:41 runsisi 阅读(122) | 评论 (0)编辑 收藏

fedora也堕落到和ubuntu一样的地步了,任何问题的解决都依靠源了
声卡驱动有问题,没办法只能更新。使用的源很单纯,163和163-update,可惜的是更新后还是出了问题,重启后停留在splash界面了,根本就出不来登录界面,折腾了很久,google之后只有一个国外的一个求助帖,而且还没有解决方法。
今天折腾了好一会,终于解决
以下是/etc/X11下prefdm的内容:(cppblog在linux下不能插入代码,不知道是我的原因还是什么原因,直接粘贴后在windows下看竟然完全看不下去了,在linux下正常,算了我也不想改了)

#!/bin/sh

PATH
=/sbin:/usr/sbin:/bin:/usr/bin

# We need to source 
this so that the login screens get translated
-/etc/sysconfig/i18n ] && . /etc/sysconfig/i18n

# Run preferred X display manager
quit_arg
=
preferred
=
if [ -/etc/sysconfig/desktop ]; then
    . 
/etc/sysconfig/desktop
    
if [ "$DISPLAYMANAGER" = GNOME ]; then
        preferred
=/usr/sbin/gdm
        quit_arg
="--retain-splash"
    elif [ 
"$DISPLAYMANAGER" = KDE ]; then
        preferred
=/usr/bin/kdm
    elif [ 
"$DISPLAYMANAGER" = WDM ]; then
        preferred
=/usr/bin/wdm
    elif [ 
"$DISPLAYMANAGER" = XDM ]; then
            preferred
=/usr/bin/xdm
        elif [ 
-"$DISPLAYMANAGER" ]; then
        preferred
=$DISPLAYMANAGER
    
else
        quit_arg
="--retain-splash"
    fi
else
    quit_arg
="--retain-splash"
fi

#added by runsisi@163.com
    preferred
=/usr/bin/kdm (这一句可以去掉)
    quit_arg=""

# shut down boot splash
/usr/bin/plymouth quit $quit_arg

shopt 
-s execfail

-"$preferred" ] && exec $preferred "$@" >/dev/null 2>&1 </dev/null

# Fallbacks, 
in order
exec gdm 
"$@" >/dev/null 2>&1 </dev/null
exec kdm 
"$@" >/dev/null 2>&1 </dev/null

for pkg in $(rpm ---qf "%{NAME}\n" --whatprovides "service(graphical-login)"| LC_ALL=C sort -u) ; do
    dm
=$(rpm ---provides $pkg | awk '/^service\(graphical-login\)/ { print $3 ; exit }')
    
if [ -"$dm" ]; then
        exec $dm 
"$@" >/dev/null 2>&1 </dev/null
    
else
        exec $pkg 
"$@" >/dev/null 2>&1 </dev/null
    fi
done

catch all exit error
exit 
1

注意红色的两行,是我添加上去的,保存后重启就好了。注意:我使用的是kde,不是gnome,也许gnome就不会出现这问题了:)
补充一点,也许你会问,我都登录不进去了怎么修改这个文件,其实在grub中选择fedora后,按ESC键会提示你输入I进入交互式登录,然后就会出现登录界面了,可以正常登录了,或者
修改grub参数使用单用户模式登录即可,或者在其他系统中修改,或者用liveCD等等,方法很多。顺便说一句,貌似fedora的liveCD不支持将iso放在ntfs格式的分区下进行启动,但
DVD版支持,centos的话不管liveCD还是DVD都不支持ntfs,也不支持ext4。

runsisi@HUST
posted @ 2010-01-08 20:12 runsisi 阅读(1380) | 评论 (0)编辑 收藏

新的一年 新的开始 新年的计划 .
Engineering mathematics (matlab)
Circuit (cadence spb)
OS (linux kernel, instruction set(x86, arm, ppc))
Appliction (Qt, linux system programming)
My personal website (based on java ee, just for fun:))
Industrious, enjoy yourself !
posted @ 2010-01-01 22:10 runsisi 阅读(96) | 评论 (0)编辑 收藏

cppblog对firefox的支持很不好啊,相当的不好...

使用gcc version 4.4.2编译stardict时会报类似如下的错:

data.cpp: In destructor ‘DictBase::~DictBase()’:
data.cpp:40: error: ‘fclose’ was not declared in this scope
data.cpp: In member function ‘gchar* DictBase::GetWordData(guint32, guint32)’:
data.cpp:50: error: ‘fseek’ was not declared in this scope
data.cpp:57: error: ‘fread’ was not declared in this scope
...
官方的patch并不完整,打了之后还会报错,我重新生成了一个补丁。
注意:由于我disable一些插件,所以这个补丁也有可能是不完整的,但如果你的configure选项和我一样的话,那应该不会有错了。
我的编译选项如下:
1> export PKG_CONFIG=/usr/bin/pkg-config
2> ./configure --prefix=/usr --disable-espeak --disable-festival --disable-spell --disable-gucharmap
3> make
4> sudo make install

附件为diff文件。
patch

runsisi@HUST




posted @ 2009-11-27 13:31 runsisi 阅读(365) | 评论 (1)编辑 收藏

以WINDOWS平台mysql-noinstall-5.1.39-win32.zip示例。

1.下载
下载mysql-noinstall-5.1.39-win32.zip及mysql-gui-tools-noinstall-5.0-r17-win32.zip两个压缩包,第二个包是图形界面的管理程序,可选。
2.解压
假设解压在D:\GreenSoftware\mysql-5.1.39-win32,这个目录下有一个“data”目录,这是存放数据的地方。为了方便备份和升级,最好把它放在其它地方。这里我在D盘新建一个目录“mysql-data”,然后把“data”子目录剪切到“D:\mysql-data”目录中。mysql-gui-tools-noinstall-5.0-r17-win32.zip随便解压到哪里都可以使用,无所谓,不讨论。
3.编写配置文件
新建my.ini。
从mysql.exe的帮助输出可以看到:
Default options are read from the following files in the given order:
C:\WINDOWS\my.ini C:\WINDOWS\my.cnf C:\my.ini C:\my.cnf D:\GreenSoftware\mysql-5
.1.39-win32\my.ini D:\GreenSoftware\mysql-5.1.39-win32\my.cnf
路径中的正斜杠,反斜杠,或两个\\都无所谓。
内容如下:
[WinMySQLAdmin]
# 指定mysql服务启动启动的文件
Server=D:\GreenSoftware\mysql-5.1.39-win32\bin\mysqld.exe
[mysqld]
# 设置mysql的安装目录
basedir=D:\GreenSoftware\mysql-5.1.39-win32
# 设置mysql数据库的数据的存放目录,必须是data,或者是\xxx\data
datadir=D:\mysql-data\data
# 设置mysql服务器的字符集
default-character-set=gbk
[client]
# 设置mysql客户端的字符集
default-character-set=gbk
4.安装服务
打开命令提示符,切换到D:\GreenSoftware\mysql-5.1.39-win32\bin目录,执行:
mysqld -install
如需删除先停止服务,然后mysqld -remove(最讨厌的就是这一点,命令行参数- ,--,/不知道什么时候用什么,linux这点比windows好多了,这里-或--都可以)
5.配置
解压mysql-gui-tools-noinstall-5.0-r17-win32.zip,打开MySQLSystemTrayMonitor.exe,在托盘图标处右击,选择MySQL Adminitrator,直接在目录下执行一样的。按住ctrl键,对话框上的Cancel会变成Skip,点击进入,Service Control->Configure Service,看见红色的就修改,默认配置文件有错误,修改为my.ini的真实路径和名字。(注意先通过跳过选项进入控制页将中文界面切换成英文的,再选择配置文件my.ini。)
6.可以通过GUI控制也可以通过命令行控制,看各人爱好。

runsisi@HUST

posted @ 2009-09-26 21:11 runsisi 阅读(704) | 评论 (0)编辑 收藏

操场上好多人哦
哈哈 路灯全开了
变成了月牙儿 弯弯的
快黑的时候和要下暴雨时一模一样 天慢慢暗下去 起风啦
开始有欢呼声了
然后就晚上了
过了5分多钟 逐渐亮起来了 像黎明时候的样子
回到黄昏时候了
然后突然冒出来一个亮点 逐渐变大变亮...

以后送一个给老婆 哈哈.

posted @ 2009-07-22 19:59 runsisi 阅读(281) | 评论 (1)编辑 收藏

EST0505的同学们,我爱你们,祝愿我们所有人都永远健康幸福快乐!
芯系中华,集成天下,电子英才,成就未来!
HUST永远的母校!
posted @ 2009-06-25 01:26 runsisi 阅读(133) | 评论 (0)编辑 收藏

牵挂
——在2009届毕业生典礼上的讲话
(二○○九年六月二十四日)
李培根
亲爱的09届毕业生同学们,你们好!
  四年前,我迎来了你们中的大多数人。今天,在你们毕业之际,在你们即将踏上新的征途的前夕,我想对你们说两个字, 那就是“牵挂”。
  今年对于整个世界来说都是困难的一年。世界的金融危机也影响到中国的经济形势,乃至就业形势。同学们,你们是否都找到了合适的工作?我们牵挂着。
  你们中的一部分人,即将踏入工作的社会,那可是没有在学校那么简单和单纯。你既需要充分地展示自己,又不能过分地表现自己;你既需要尊重领导和前辈,又不必刻意去逢迎;你既需要有理想和目标,又不能刻意追求、过于功利;你既需要与同事竞争,更需要与他们协同。亲爱的同学,你准备好了吗?我们牵挂着。
  也许你将走在一条大道上,在大城市,在名单位……大道上有千军万马,当你意气风发、策马奔驰的时候,可要当心,那里非常拥挤,脚下甚至还有石头。亲爱的同学,竞争的路上,千万别摔到,我们牵挂着。
  也许你将走在一条小道上,在乡村, 在城镇,甚至在西部……一条小路曲曲弯弯细又长,一样通向理想的远方。小道旁时而风景可人,或许有溪流奏响,或许有百鸟鸣唱,还有万紫千红竞芬芳。小路上时而泥泞,时而杂草丛生,甚至蛇蝎横行。当风景迷人时,不要太迷恋;当小路难行时,千万别退缩。纵使山穷水尽之际,只要坚持,相信会有柳暗花明之时。亲爱的同学,你有思想准备吗?我们牵挂着。
  也许你将走在崎岖的山路上,为学术,为创业……那是一条攀登之路。你不仅需要优化方向,选择好路径,而且你要看清脚下的每一步。攀登悬崖峭壁时,可不能有一步的闪失。一步不慎,多年的心血,可能功亏一篑。亲爱的同学,你可有思想准备?我们牵挂着。
  亲爱的同学, 也许此刻你豪情满怀,踌躇满志。你希望未来挥毫于江河,画笔于大山。的确中华崛起的蓝图在期待着你,你可以留下激扬之文字,你还可以指点江山。然而,你也要常常低下头,脚踏实地。同学,你意识到了吗?我们牵挂着。
  亲爱的同学,也许你此刻正感到迷茫,不知路在何方。大学的几年,你或许后悔那糟糕的成绩,甚至痛心没有拿到那一纸文凭。同学啊,你不用灰心,不能消沉。路,其实就在脚下。人生的路是数不清的,通向成功的路也有千万条。低下头,从脚下最不起眼的路起步,昂起头,仰望天空,太阳、月亮和星星对你和他人一样明亮。同学啊,你未来的人生依然充满希望。你意识到了吗?我们牵挂着。
  亲爱的同学,其实,牵挂你的人还有很多。你含辛茹苦的父母永远会牵挂着你,他们牵挂着你的一切。你的老师,包括中小学老师,会牵挂着你;你的同学将牵挂着你……同学,能否不吝啬你的牵挂?
  亲爱的同学,请不要吝啬你的牵挂。把牵挂给予你的父母、亲人,他们为你付出太多。城里节奏太快,中年的他们似乎显得更加疲惫;在田野里劳作的父母,他们的背也可能开始驼了,甚至他们可能还在盘算,什么时候才能还清为你求学所欠的外债。不时给他们一个电话,常回家看看。看看他们的生活,惦着他们的健康。同学,你会牵挂着吗?
  亲爱的同学,请不要吝啬你的牵挂。把牵挂给予你尊敬的老师,给予你尊敬的辅导员。你的成长中,他们也倾注了心血。他们曾经对你的表扬或者批评,都可以成为你牵挂的理由。你只需要偶尔在网上,在电话里,一个简单的问候足矣。同学,你会牵挂着吗?
  亲爱的同学,请不要吝啬你的牵挂。把牵挂给予你的同学。同学中有你要好的朋友。同学之间的友情是最值得珍惜的,因为没有任何功利的目的。也许某一个同学与你有过争吵,但是那也没有本质的怨仇,一笑便泯灭。同学中可能还有你的初恋,即使未能终成眷属,初恋也是不能忘怀的,因为那是纯洁的。同窗的友情,可笑的争吵,难忘的初恋,都可以成为牵挂的理由。请把照片留着,把邮箱地址和电话号码留着。同学,你会牵挂着吗?
  亲爱的同学,请不要吝啬你的牵挂。把牵挂给予你未来的同事和朋友。多设身处地为别人想想,关心、帮助别人,你将有更多的朋友,也会得到更多人的帮助。同学,你会牵挂着吗?
  亲爱的同学,请不要吝啬你的牵挂。留一些牵挂给你素不相识的人。 5.12地震中伤残的人们怎样了? 地震后幸存的人们生活和心理状况如何?那些从事城市建设的民工们怎样挣扎在贫困线上,还有那些在贫穷乡村的中老年农民们如何绝望地守着那几分贫瘠的土地…。要做一个善良的人,善良就是这种牵挂的理由。同学,你会牵挂着吗?
  亲爱的同学,请不要吝啬你的牵挂。留一些牵挂给你的母校。 在这里,你毕竟度过了人生成长的最重要的岁月。在这里,你学到了知识,得到了能力培养与锻炼。你会牵挂吗?若干年后,你的学科是否已经一流,母校是否已经国际知名?你会牵挂吗?也许在母校你有过不愉快的经历,但对于你的成长未必不是一件好事。你会牵挂吗?你在校期间,学校有很多不尽如人意的地方,很多事情令你不快甚至愤怒,但那只是培根的不力,却不是母校的丑陋。你会牵挂吗?喻园夏日的荷塘是否还是阵阵清香?秋日月下的喻园中是否依然浮动着桂香?同济校区里裘法祖之树一定更加茁壮,你和恋人常坐的石凳是否还是老模样?当你牵挂时,常到网上看看,偶尔回母校走走。
  亲爱的同学,我牵挂着,你牵挂着,他也牵挂着。让我们彼此牵挂着,让牵挂成为一种永恒的记忆。
posted @ 2009-06-25 01:12 runsisi 阅读(199) | 评论 (1)编辑 收藏

找到男朋友了不要跟我说
如果很快结婚的话就不要告诉我
等我毕业后了再送你礼物
曾经说永远爱你
最后却给不了你真正想要的
posted @ 2009-06-08 23:57 runsisi 阅读(90) | 评论 (0)编辑 收藏

仅列出标题
共5页: 1 2 3 4 5