.a为后缀的文件,是由目标文件构成的档案库文件;
.C,.cc或.cxx 为后缀的文件,是C++源代码文件;
.h为后缀的文件,是程序所包含的头文件;
.i 为后缀的文件,是已经预处理过的C源代码文件;
.ii为后缀的文件,是已经预处理过的C++源代码文件;
.m为后缀的文件,是Objective-C源代码文件;
.o为后缀的文件,是编译后的目标文件;
.s为后缀的文件,是汇编语言源代码文件;
.S为后缀的文件,是经过预编译的汇编语言源代码文件。
最近因为工作需要,接触了 owncloud 私有云平台,感觉真的很不错; 最特别的是其 app 扩展功能, 任何人都可以为依据这个私有云平台开发插件和应用, 目前这个平台已经可以集成 email , rss 等相关应用, 我认为以后可能还会集成 blog 或者 微博等相关应用,这样这款应该就可以真正的成为个人应用云平台。
下面转入正题,owncloud 有 windows、linux、android 和 ios 的客户端, 这里主要说一下 owncloud windows client 的编译过程。
1. 首先是编译环境,基于 opensuse 12.1 x64 版本,因为要在 linux 上编译 windows 程序,因此需要构建交叉编译环境。 构建这交叉编译环境是个力气活,因为要添加各种源,还有各种依赖要去解决和安装,所以花的时间比较长。 这里可以参考一下官方的文档 和 这篇文档。(在这里我建议在虚拟机里面安装 opensuse 并构建交叉编译环境,这样就可以将安装好的编译环境导出备份,以做后用。)
2. 编译过程。 只要交叉编译环境搭建好之后,剩下的就比较顺利了。
<code>
# cd ~
# mkdir owncloud-client
# cd owncloud-client
# git clone git://git.csync.org/users/freitag/csync.git ocsync
# git clone git://github.com/owncloud/mirall.git
# mkdir ocsync-build
# mkdir mirall-build
# cd ocsync
# git checkout dav
# cd ocsync-build
# mingw32-cmake -DCMAKE_BUILD_TYPE="Debug" ../ocsync
# mingw32-make
# cd ../mirall-build
# cmake -DCMAKE_BUILD_TYPE="Debug" ../mirall \
-DCSYNC_BUILD_PATH=/home/speed/owncloud-client/ocsync-build \
-DCSYNC_INCLUDE_PATH=/home/speed/owncloud-client/ocsync/src \
-DCMAKE_TOOLCHAIN_FILE=../mirall/admin/win/Toolchain-mingw32-openSUSE.cmake
# mingw32-make
# sudo mingw32-make package
</code>
3. 最后看到 owncloud-1.2.2-setup.exe generated 这个字样就可以了,说明 windows 客户端编译完成了。
参考文章:owncloud 官方文档: https://github.com/owncloud/mirall/blob/master/doc/building.rst
另外一篇文档 : https://gist.github.com/Noxwizard/4011094
首先援引一条官方新闻
"日前工信部软件与集成电路促进中心正式宣布与 Canonical 达成协议,双方未来将合力打造专为中国市场而设的 Ubuntu 麒麟(Ubuntu Kylin)操作系统基准架构,为中国的硬件、软件开发者提供参考。据悉在四月的时候基于 Ubuntu 13.04(Raring Ringtail)的版本就会上线,其中会加入具有中国特色的农历、输入法、音乐服务等,未来百度地图、交通资讯、淘宝购物、照片编辑、WPS 等功能也均会被整合到系统之中。" ( 以上文字来自 瘾科技 Engadget )
看了这条新闻之后还是有些欣慰,毕竟光明正大的和开源社区合作要比银河麒麟涉嫌抄袭 FreeBSD 要好。 好吧转入正题吧,说一下定制自己的 Ubuntu 发行版。
为什么要定制呢,可能每个人的原因都不一样,比如说我很不喜欢 Ubuntu 的 unity,系统经常动不动就报错。 如果你只是想换其他的桌面环境的话,你可以直接到 Ubuntu 官方下载包含不同桌面环境的光盘镜像,目前我知道的有, kubuntu(KED),xubuntu( xfce), lubuntu (lxde),其他的还有很多, 如果你不满足以上官方给出的镜像, 你还可以尝试一下定制自己的 Ubuntu 发行版。 链接给出: http://code.google.com/p/ubuntu-builder/ 也就是 Ubuntu build 。 不过这里还是要吐槽一下, 这个和 http://susestudio.com 相比还是逊色不少。 如果你对 suse 或者 opensuse 感兴趣的话, 可以尝试一下 susestudio.com , 功能真的很赞。
因为最近要做了一个 ipv6 的 cdn 加速项目,所以开始着手准备 ipv6 相关的测试环境,从网上搜出来不少相关的文章:有一篇介绍是通过 DynamipsGUI 加 vmware 来搭建ipv6 测试网络; 照着做了下,发现比较复杂,仅仅是 DynamipsGUI 的设置就比较麻烦; 后来看到老外的一篇文章,在 he.net 申请 ipv6 隧道,会获得一个 /64 的 ipv6 子网, 但因为 he.net 隧道要就客户端这边的 endpoint 要有独立的 ip 才行, 所以我就绕了个弯子; 在自己的美国的 vps ( 有独立的 ipv4 地址 ) 建立了一个 ipv6 隧道,然后再搭建给予 TAP openvpn 服务器,并安装 radvd 服务进行 ipv6 地址的路由; 这样的话,我处于内网的电脑,通过 openvpn 连接到我的 vps 上面,组建一个网络;这样,我处于内网的 电脑就可以获得公网 ipv6 地址了。 这个方案总体满足了测试的需求,并且可以从公网访问。 但是这个方案也有很多的不足,首先就是 openvpn 协议收到 gfw 的影响,很难连的上,第二就是网络延迟比较大,不适合进行测试。 对于 openvpn 协议受到干扰的问题,有好几种方法,整体思路就是修改报文的指纹,使得 gfw 无法认出 openvpn 协议,所以就无法干扰了。 但是对于网络的高延迟这块,就没有办法解决了。 后来因为项目搁浅的原因,我也去忙其他的了。
今天因为这个项目又有点消息了,我就又从网上查了一些资料,其中看到 https://wiki.ubuntu.com/IPv6 ubuntu 的关于 ipv6 的相关文档。 有看了一篇 ibm 的一篇关于搭建 ipv6 测试环境的文章 http://www.ibm.com/developerworks/cn/linux/l-cn-ipv6env/ ; 我就尝试了在我的 vmware 局域网中的一台 Ubuntu 服务器上 安装 radvd 服务,并配置了 ipv6 子网; 我发现处于局域网内的其他设备默认就配置好了 ipv6 地址了。 通过测试,发现完全满足自己的 ipv6 需求。
下面简单总结一下安装和设置的步骤:
1. 开启 ipv6 的转发功能, 修改 /etc/sysctl.conf 文件,开启 ipv6 的转发功能 ( 去掉对 net.ipv6.conf.all.forwarding=1 的注释),并 sudo sysctl �p 使生效。
2. 安装 radvd 服务 (基于 Ubuntu 12.04): sudo apt-get install radvd
3. 配置 ipv6 静态 ip地址; 在 /etc/network/interfaces 中添加下面配置
iface eth1 inet6 static
address 2002:9ba:b4e:6::1
netmask 64
4. 编辑 /etc/radvd.conf 文件
interface eth1
{
AdvSendAdvert on;
prefix 2002:9ba:b4e:6::/64
{
AdvOnLink on;
AdvAutonomous on;
};
};
5. 重启 radvd 服务, /etc/init.d/radvd restart
现在看下你局域网里的其他设备是不是已经设置好了 ipv6 的地址了
转眼就3月了,春天要来了! 距离上篇博客又是半个多月了。最近打算搞一下 php ;工欲善其事,必先利其器, 所以要搞定下 ide ,这里我还是用 vim 。
Vim 有很多的插件,选择合适的插件,并来个完美的vim 配置文件很重要的。 首先默认 ubuntu 并没有安装 vim ,所以要先把 vim 安装上。祭出 Apt 超级牛力命令 sudo apt-get install vim ;
安装完后,推荐一款 Ubuntu 上的 vim 插件管理工具, vim-addon-manager 可以很方便的管理现在已经安装的插件; 安装完 vim-addon-manager 后在安装 vim-scripts , 里面包含一些常用的 vim 脚本和插件。
除此之外, http://www.vim.org/scripts/ 这里有任何你需要的 vim 插件和脚本; 这里 make 一下, 通过 http://www.vim.org/scripts/ 直接下载并解压安装的 vim 插件; 在完成安装前需要下面的这个步骤:
在 console 里面 打开 vim ; 然后执行以下命令 ":helptags ~/.vim/doc/"
这样就可以在 vim 的 help 里面查到手工安装的 插件的帮助文件了;
最后备注几个常用或者不错的 vim 插件; ctags 不是 vim 的插件,但属于使用 vim 必装的软件,ubuntu 下可以用 apt 直接安装; taglist 非常不错; NERD_commenter 和 NERD_tree 也是非常的不错的插件;剩下的一些是和具体代码相关的插件, 比如 a.vim 和 c.vim 以及 zencoding 和 phpcomplete 和 php-doc
时间有限,这里就是简单的罗列一下,mark