八月十五,阴有小雨,无聊在家。
久闻GLib算法精妙,是linux下偷鸡摸狗,杀人防火,居家常用之利器,遂决定down来
一see。
down下GLib的文档看了一下,发现果然妙哉,有很多东西都是我以前寻觅的,相见恨晚。
从rand入手写个测试文件:
main.cpp
#include <stdio.h>
#include <glib.h>
int main(int argc,char **argv)
{
GRand * p1= g_rand_new() ;
for(int i=0 ;i<100;i++)
{
int c=g_rand_int_range(p1,0,1000);
printf("%d %d/n",i,c);
}
g_rand_free(p1);
return 0 ;
}
Makefile://这个是修改过的makefile了
# "tianjieshui" Makefile
CPPBASEFLAGS =
OBJ = main.o
BIN = main
DEBUG=""
#check for debug info
ifdef DEBUG
CPPFLAGS = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DDEBUG -g $(CPPBASEFLAGS)
LDFLAGS = -lglib-2.0
else
CPPFLAGS = -DNDEBUG -O3 $(CPPBASEFLAGS)
LDFLAGS = -s
endif
tl: $(OBJ)
g++ -o $(BIN) $(OBJ) $(LDFLAGS)
.cpp.o:
g++ $(CPPFLAGS) -c $<
# Targets that are not files
.PHONY:
all clean style
all:
./$(BIN)
clean:
rm -f $(OBJ)
rm -rf *.orig
style:
astyle --style=gnu *.cpp
rm -rf *.orig
运行make,挂了 找不到glib.h
查找了半天才发现 Glib 和 glibc 不是一个东东
罢了那就安装库好了:
Glib 依赖于pkgconfig
http://www.freedesktop.org/software/pkgconfig/releases/pkgconfig-0.15.0.tar.gz
./configure --prefix=/usr &&
make &&
make install
注意一定要声名这个鸟变量,否则编译GLib时让你痛不欲生
export PKG_CONFIG_PATH=/usr/lib/pkgconfig
下载glib包
ftp://ftp.gtk.org/pub/gtk/v2.2/glib-2.2.1.tar.bz2
./configure --prefix=/usr &&
make &&
make install
bingoo! 现在可以用了