分类:
2007-11-07 21:44:52
|
不包含这个头文件的话,就会有一些“变量未声明”的错误,比如:
|
接下来就是编写代码了:
|
取个名叫test.cpp,开始编译链接吧:
g++ -I/usr/local/pgsql/include test.cpp -L/usr/local/pgsql/lib -lpq |
参数还真不少-_-! 还是一个一个的说明吧。
1. -Idirectory 选项用来告诉编译器PostgreSQL头文件的安装位置,如果没有提供正确的选项就会出现错误:
libpq-fe.h: No such file or directory |
如果不清楚或不确定头文件放在什么地方,可以用pg_config来找到它:
$ pg_config --includedir |
2. -Ldirectory 选项用来告诉编译器libpq库所在的目录,如果你给错了目录位置或者根本没有给出,那下面的错误肯定会出现了:
cannot find -lpq |
同样也可以用pg_config找出库目录:
$ pg_config --libdir |
3. 声明选项 -lpq,这样就可以把libpq库链接进来,而如果没有链接,那么很有可能出现类似的错误:
undefined reference to `PQstatus' |
4. 最后一条:为了尽可能提高可移植性,应该把 -L 选项放在 -lpq 选项前面。