纰缪绸缪

虽然苹果的leopard号称过了UNIX测试,虽然Mac OS X来源于BSD,在上面编译安装软件,和Linux还是有点区别。常见的./configure,要加上一堆参数才好使。下面是编译google的protocol buffer(假设准备安装到/foo):

Read More

一些cmake的tips

Read More

有的时候,我们想要在emacs中或者bash命令行中输入TAB,就是"\t"啦。可是,直接按TAB键往往是不好使的。比如在emacs中,很多编程模式下,按TAB会对应"自动缩进所在行",而在bash里,TAB键更是变成了"自动补全"的功能。如果确实想暂时输入一个"\t",可以先按ctrl-q,再按TAB键就行了。

Read More

SWIG可以把c/c++的库转化成perl能用的库。可是,俺发现如果c++里用了uint32_t,perl出来的结果就是:

_p_uint32_t=SCALAR(0x82152ac)

搜索了半天,才知道,要加入

Read More

主要分三步:

  1. 编译
  2. 配置apache
  3. 测试
Read More

Cvs虽然很老很麻烦,可是还要用。Cvs的分支常用命令有:

Read More

在perl中自己编译安装module主要有两种方法:Build.pl和Makefile.PL。

Read More

基本用法

# 初始化 %h为空数组
%h = {};
# 用数组初始化%h为 a=>1, b=>2
%h = ('a', 1, 'b', 2);
# 意义同上,只是另一种更形象化的写法。
%h = ('a'=>1, 'b'=>2);
#如果key是字符串,可以省略引号。下面这行和上面那行是一样的
%h = (a=>1, b=>2);
# 用{}来访问
print "$h{a}\n"; # 打印1
$h{b} = '2b';
print "$h{b}\n"; # 打印2b
# 删除key用delete
delete $h{b}; # 从$h删除'b'

清空hash

Read More

用(caller(0))[3]就可以了。其中,第一个数字0表示当前函数。可以把0改为1,就是上一层函数。第二个数字3表示显示函数的名称,它的具体解释如下:

Read More

apache中,如果一个目录没有index.html,默认会帮你生成一个, 列出目录下所有的文件。如果你不想要这个功能,可以参考这篇文章:

Read More