Chinaunix

标题: 求助:win2000下cygwin + pgsql + libpgxx的程序,运行无显示。 [打印本页]

作者: wuyu1998    时间: 2006-10-26 15:24
标题: 求助:win2000下cygwin + pgsql + libpgxx的程序,运行无显示。
问题:
程序运行后,返回。无任何错误提示,也无任何提示消息。

环境:
1) win2000pro下安装cygwin-cd-release-20060906.iso。但是,没有安装postgresql软件包。
2) 在www.postgresql.org下载postgresql-8.1.5.tar.bz2。用postgres用户登陆到win2000,编译安装于/usr/local/pgsql目录中。
3) 用postgres用户登陆到win2000,编译安装libpqxx-2.6.8.tar.gz于/usr/local/pgsql目录中。
4) 将postmaster(PostgreSQL的服务器)安装成NT服务并启动。
5) 在/etc/profile中的PATH改为:
PATH=.:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/pgsql/bin:/sbin:/usr/sbin:/lib:/usr/local/pgsql/lib: $PATH
注:在PATH中,/usr/local/pgsql/lib:和$PATH之间没有空格,此处为使贴子不发生转意,特意加的。
6) 使用了makefile文件。

程序:
1. 测试postgresql-8.1.5.tar.bz2中的testlibpq.c。编译、连接、运行,正确。
gcc -g testlibpq.c -I/usr/local/pgsql/include -L/usr/local/pgsql/lib -lpq

2. 测试libpqxx-2.6.8.tar.gz中的test001.cxx。编译、连接:正确;运行:不正确。程序运行后,返回。无任何错误提示,也无任何提示消息。
g++ -g test001.cxx -I/usr/local/pgsql/include -L/usr/local/pgsql/lib -lpqxx -lpq

可能的问题:
1. 前2天也出现过类似的问题,但我最终解决了。当时是libpq程序运行后,返回。无任何错误提示,也无任何提示消息。而libpqxx程序运行正常。问题没有找到。而现在则相反。
2. 有次因为PATH中没有包含“:/lib:/usr/local/pgsql/lib”,导致程序没有找到库文件,而自动退出。在加入后,使用libpq和libpqxx的程序都正确了。
作者: wuyu1998    时间: 2006-10-26 18:14
标题: 重新安装了pgsql + libpqxx,问题没有解决。
在卸载了pgsql后,重新安装pgsql + libpqxx。但是问题依旧。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2