本站搜索
页面
分类
最新评论
- liangsuilong 发表于《写在KDE 4.5发布之后》
- Lancer 发表于《写在KDE 4.5发布之后》
- liangsuilong 发表于《VirtualBox的2D视频加速测试》
- 时代桃源 发表于《写在KDE 4.5发布之后》
- 淘宝网美白产品排行榜 发表于《写在KDE 4.5发布之后》
Linux
朋友们的blog
- A Thousand Mile
- apt-blog.net IT民工养成计划 PT博客
- Blinux
- CoffeeCat
- DCY--IT路上……
- DY Feng's Blog 叶毅锋的博客
- Felix's Blog
- HeliumCity The future, in the freedom.
- I’m TualatriX
- Jia Pad
- K.I.S.S. – 简单哲学
- Knowledge == Language
- sychopx
- Yayi's Word
- 七星庐
- 写真と嵐とヒマワリの旅人
- 小杰的博客
- 心之所在的日志
- 歪歪灰主流
- 毛毛's Blog
- 稳 – 不信未作牺牲竟先可拥有 只相信是靠双手找到我欲求
- 读书写字看风景
- 追梦
- 阳光灿烂的日子
-
最新日志
Tag Cloud
按标签归档:编译
手动制作Debian的linux-kbuild包
之前的牢骚文发了,我也已经等待很久了,Debian的linux-kbuild-2.6.33还是不愿意出来,倒是linux-kbuild-2.6.34则在和内核一起发布。看样子2.6.33内核会被Debian放弃了。所以还是要自己动手,丰衣足食,自己打个linux-kbuild-2.6.33的deb包出来用。具体的做法我是参考这篇文章的:http://wiki.debian.org/HowToRebuildAnOfficialDebianKernelPackage 首先到Debian的SVN抓取一份源代码: svn co svn://svn.debian.org/kernel/dists/trunk/linux-kbuild-2.6 下载一份完整的内核源代码包,注意不要下载2.6.x.y版本,而是下载2.6.x的版本,比如2.6.33内核: wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.tar.bz2 进入linux-kbuild-2.6目录,然后生成一份经过debian化linux-kbuild的源代码(补充:生成orig吧之前,需要到debian/changelog查看其版本号,如果生成的linux-kbuild比changelog上的版本要旧,则需要把前面版本的changelog删除掉,然后添加上现有版本的changelog。直接加在最新版本前的话就会后面会引起错误,虽然不影响打包。如果比changelog的要新,则自行加上即可。): ./debian/bin/genorig.py ../linux-2.6.33.tar.bz2 cd .. 解压orig源码包: tar xzf orig/linux-kbuild-2.6_2.6.33.orig.tar.gz 进入解压后的目录,把linux-kbuild-2.6目录内的所有东西复制到linux-kbuild-2.6-2.6.33 cd linux-kbuild-2.6-2.6.33/ cp -a ../linux-kbuild-2.6/* ./ 生成control文件,然后编译,如果需要的话当然要修改一下: ./debian/bin/gencontrol.py dch -i 清理目录,检查编译依赖以后,就可以生成deb: make -f debian/rules clean dpkg-checkbuilddeps dpkg-buildpackage -us -uc 最后返回到上层目录安装linux-kbuild-2.6.33的deb包即可。安装结束后,也就可以安装linux-headers,随后就可以在新内核上编译第三方内核模块。
Fedora与distcc
在gentoo里,distcc是一个很常用的分布式编译工具,借助多台计算机的合力,加速编译安装软件的进度,大幅度提升效率。作为samba的一个分支项目,distcc并不是让gentoo专美的,其他Linux发行版也可以享用。 在Fedora下的做法,首先得要安装distcc和distcc-server,命令如下: sudo yum install distcc distcc-server 安装过后,就是配置之路了。 服务器端: 在/etc/distcc/hosts只要写一行: localhost hostnameA hostnameB 另外在/etc/hosts里面加上: IP hostnameA IP hostnameB 客户端: 在/etc/sysconfig/distccd加上: OPTIONS=”–allow server_IP” 最后还得把防火墙的distcc端口打开,那么就大功告成了。最好就把那个可恶的SELiinux停用了。 当然编译的时候要指定编译器了。 ./configure CC=distcc make -jn CC=distcc
突然之间喜欢上编译软件
用惯了deb包和rpm包,突然之间想找点刺激。又由于fedora里的EVA QQ的rpm包是在太旧了,上不了QQ。所以只能硬着头皮去编译EVA。家里的电脑虽然不是很新,但是总得是一台单核中的精英吧!编译一个EVA都要花了十分钟了。如果我用rpm包或者deb包,那么这个时间是1~2分钟。不过编译一次真的可以学习到很多东西啊。例如,如何配置编译环境,如何去解决依赖关系,怎样去排查错误等。最关键的是,它让我养成了一个先看说明文件的良好的习惯,而且心思需要更加细密。编译软件我想不仅仅是计算机水平的提高,还是工作作风和态度的提升! 渐渐地,我爱上了编译软件了。现在安装软件首先是找源代码编译,不行以后才去找二进制软件包了。现在我不仅已经编译了EVA,还编译了Linux Kernel 2.6.24,很成功啊,不过就是漏了打内核补丁而已。哈哈!
