构建Qt PostgreSql驱动程序

时间:2011-03-30 13:50:35

标签: qt build driver postgresql

我一直在尝试构建Qt驱动程序2周,但没有成功。 我甚至moven on windows xp 32 Bit以避免兼容64位问题(我试图将Psql库链接到我的C程序时遇到)。 使用普通的C编译器可以正常运行,但是当我想拥有一个GUI时。 我试过了 qmake -o Makefile“INCLUDEPATH + = D:/Programme/PostgresSQL/9.0/include”“LIBS + = D:/Programme/PostgresPlus/9.0/lib(或/lib/libpq.lib)”psql.pro 它生成Makefile调试和发布 现在当我尝试:mingw32-make debug或release或者甚至只是mingw32-make

D:\Qt\2010.05\qt\src\plugins\sqldrivers\psql>mingw32-make
mingw32-make -f Makefile.Debug all
mingw32-make[1]: Entering directory `D:/Qt/2010.05/qt/src/plugins/sqldrivers/psq
l'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -mthreads -Wl -shared -Wl,--out-implib,d:\Qt\2010.05\qt\plugins\sqldrivers\li
bqsqlpsqld4.a -o ..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll tmp/obj/debug_sha
red/main.o tmp/obj/debug_shared/qsql_psql.o tmp/obj/debug_shared/moc_qsql_psql.o
-L"d:\Qt\2010.05\qt\lib" -L"d:\Qt\2010.05\qt\lib" tmp\obj\debug_shared\qsqlpsq
ld_resource_res.o -lpq -lQtSqld4 -lQtCored4
d:/qt/2010.05/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe:
cannot find -lpq
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll] Error 1
mingw32-make[1]: Leaving directory `D:/Qt/2010.05/qt/src/plugins/sqldrivers/psql
'
mingw32-make: *** [debug-all] Error 2

我真的不知道这个缺失-lpq可能是什么。 谢谢你的帮助。 梅迪

1 个答案:

答案 0 :(得分:1)

您正在使用mingw32的gcc编译qt并尝试使用与MSVC一起编译的postgreql库。

MSVC对库使用.LIB,而Mingw32(gcc + binutils)对库使用.a或.so文件。

您可以尝试以下任一方法: 一个。使用MSVC编译Qt。 湾使用mingw32编译postgresql并使用它的库。