Results 1 to 20 of 61

Thread: QPSQL problem

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QPSQL problem

    Try downloading ftp://ftp.fi.postgresql.org/pub/post...ql-8.3.0-1.zip.

    In Installation Options, make sure to select "Include files" and "Library files" under "Development" section.

    To avoid common space problems, you might also want to change the default installation path ("C:\Program Files\PostgreSQL\8.3") not to contain spaces (eg. "C:\psql").

    Change to directory $QTDIR\src\plugins\sqldrivers\psql and follow given instructions: How to Build the QPSQL Plugin on Windows.
    J-P Nurmi

  2. #2
    Join Date
    Mar 2008
    Posts
    37
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: QPSQL problem

    Done, but some problems yet!

    Reinstalled postgresql in c:/psql, but its not exists ms folder in /lib. "libpq.lib" is in /lib.

    So...when I did:
    Qt Code:
    1. cd %QTDIR%\src\plugins\sqldrivers\psql
    2. qmake -o Makefile "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\ms\libpq.lib" psql.pro
    3. make
    To copy to clipboard, switch view to plain text mode 

    Error:
    Qt Code:
    1. mingw32-make -f Makefile.Debug all
    2. mingw32-make[1]: Entering directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    3. g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
    4. oc -mthreads -Wl -shared -Wl,--out-implib,c:\Qt\4.3.3\plugins\sqldrivers\libqsql
    5. psqld4.a -o ..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll tmp/obj/debug_shared/m
    6. ain.o tmp/obj/debug_shared/qsql_psql.o tmp/obj/debug_shared/moc_qsql_psql.o -L"
    7. c:\Qt\4.3.3\lib" -L"c:\Qt\4.3.3\lib" tmp\obj\debug_shared\qsqlpsqld_resource_res
    8. .o C:\psql\lib\ms\libpq.lib -lQtSqld4 -lQtCored4
    9. g++: C:\psql\lib\ms\libpq.lib: No such file or directory
    10. mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll] Error 1
    11. mingw32-make[1]: Leaving directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    12. mingw32-make: *** [debug-all] Error 2
    To copy to clipboard, switch view to plain text mode 

    So I tried:
    Qt Code:
    1. cd %QTDIR%\src\plugins\sqldrivers\psql
    2. qmake -o Makefile "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\libpq.lib" psql.pro
    3. make
    To copy to clipboard, switch view to plain text mode 

    ERROR:
    Qt Code:
    1. mingw32-make -f Makefile.Debug all
    2. mingw32-make[1]: Entering directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    3. g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
    4. oc -mthreads -Wl -shared -Wl,--out-implib,c:\Qt\4.3.3\plugins\sqldrivers\libqsql
    5. psqld4.a -o ..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll tmp/obj/debug_shared/m
    6. ain.o tmp/obj/debug_shared/qsql_psql.o tmp/obj/debug_shared/moc_qsql_psql.o -L"
    7. c:\Qt\4.3.3\lib" -L"c:\Qt\4.3.3\lib" tmp\obj\debug_shared\qsqlpsqld_resource_res
    8. .o C:\psql\lib\libpq.lib -lQtSqld4 -lQtCored4
    9. C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot fin
    10. d -lQtSqld4
    11. collect2: ld returned 1 exit status
    12. mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll] Error 1
    13. mingw32-make[1]: Leaving directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    14. mingw32-make: *** [debug-all] Error 2
    To copy to clipboard, switch view to plain text mode 

    What is that?

    Thanks.
    Hugs.

  3. #3
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QPSQL problem

    Argh, sorry. I didn't realize they were MSVC libs but you're using MinGW. Try converting them as MinGW libs (.lib -> .a) with reimp like it's done in this wiki article: [wiki]Building the QMYSQL plugin on Windows using MinGW[/wiki]
    J-P Nurmi

  4. #4
    Join Date
    Mar 2008
    Posts
    37
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: QPSQL problem

    Qt Code:
    1. C:\psql\lib>reimp libpq.lib
    2. 'reimp' is not recognized as an internal or external command, operable program or batch file.
    To copy to clipboard, switch view to plain text mode 

    Did I do something wrong?

    ps.: My O.S. is Windows Vista.

  5. #5
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QPSQL problem

    reimp is part of mingw-utils
    J-P Nurmi

  6. #6
    Join Date
    Mar 2008
    Posts
    37
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: QPSQL problem

    ERROR:
    Qt Code:
    1. C:\psql\lib>reimp libpq.lib
    2.  
    3. C:\Qt\4.3.3\src\plugins\sqldrivers\psql>qmake -o Makefile "INCLUDEPATH+=C:\psql\
    4. include" "LIBS+=C:\psql\lib\liblibpq.a" psql.pro
    5.  
    6. C:\Qt\4.3.3\src\plugins\sqldrivers\psql>make
    7. mingw32-make -f Makefile.Debug all
    8. mingw32-make[1]: Entering directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    9. g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
    10. oc -mthreads -Wl -shared -Wl,--out-implib,c:\Qt\4.3.3\plugins\sqldrivers\libqsql
    11. psqld4.a -o ..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll tmp/obj/debug_shared/m
    12. ain.o tmp/obj/debug_shared/qsql_psql.o tmp/obj/debug_shared/moc_qsql_psql.o -L"
    13. c:\Qt\4.3.3\lib" -L"c:\Qt\4.3.3\lib" tmp\obj\debug_shared\qsqlpsqld_resource_res
    14. .o C:\psql\lib\liblibpq.a -lQtSqld4 -lQtCored4
    15. C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot fin
    16. d -lQtSqld4
    17. collect2: ld returned 1 exit status
    18. mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlpsqld4.dll] Error 1
    19. mingw32-make[1]: Leaving directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    20. mingw32-make: *** [debug-all] Error 2
    To copy to clipboard, switch view to plain text mode 


    Qt Code:
    1. C:\psql\lib>reimp libpq.lib
    To copy to clipboard, switch view to plain text mode 

    is it libpq.lib or another .lib file?

    Suggestion?

  7. #7
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QPSQL problem

    Quote Originally Posted by LoneWolf View Post
    cannot find -lQtSqld4
    Ok, we're getting closer. Now the problem is that you're trying to compile something in debug mode but you don't have debug version of Qt built. I recommend you build the plugin in release mode instead:
    Qt Code:
    1. qmake -config release -o Makefile "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\liblibpq.a" psql.pro
    To copy to clipboard, switch view to plain text mode 
    J-P Nurmi

  8. #8
    Join Date
    Mar 2008
    Posts
    37
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: QPSQL problem

    Yeah, closer and closer...

    So, I did:
    Qt Code:
    1. C:\Qt\4.3.3\src\plugins\sqldrivers\psql>qmake -config release -o Makefile "INCLU
    2. DEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\liblibpq.a" psql.pro
    To copy to clipboard, switch view to plain text mode 

    And:
    Qt Code:
    1. C:\Qt\4.3.3\src\plugins\sqldrivers\psql>make
    To copy to clipboard, switch view to plain text mode 

    In beginning it was all right, but after that...
    ERROR:
    Qt Code:
    1. Creating library file: c:\Qt\4.3.3\plugins\sqldrivers\libqsqlpsql4.a
    2. tmp/obj/release_shared/qsql_psql.o(.text+0x54):qsql_psql.cpp: undefined referenc
    3. e to `PQerrorMessage'
    4. tmp/obj/release_shared/qsql_psql.o(.text+0x32b):qsql_psql.cpp: undefined referen
    5. ce to `PQresultStatus'
    6. tmp/obj/release_shared/qsql_psql.o(.text+0x4f0):qsql_psql.cpp: undefined referen
    7. ce to `PQntuples'
    8. tmp/obj/release_shared/qsql_psql.o(.text+0x834):qsql_psql.cpp: undefined referen
    9. ce to `PQclear'
    10. tmp/obj/release_shared/qsql_psql.o(.text+0xb34):qsql_psql.cpp: undefined referen
    11. ce to `PQntuples'
    12. tmp/obj/release_shared/qsql_psql.o(.text+0xbac):qsql_psql.cpp: undefined referen
    13. ce to `PQnfields'
    14. tmp/obj/release_shared/qsql_psql.o(.text+0xc22):qsql_psql.cpp: undefined referen
    15. ce to `PQftype'
    16. tmp/obj/release_shared/qsql_psql.o(.text+0xc61):qsql_psql.cpp: undefined referen
    17. ce to `PQgetvalue'
    18. tmp/obj/release_shared/qsql_psql.o(.text+0xc95):qsql_psql.cpp: undefined referen
    19. ce to `PQgetisnull'
    20. tmp/obj/release_shared/qsql_psql.o(.text+0xe2c):qsql_psql.cpp: undefined referen
    21. ce to `PQunescapeBytea'
    22. tmp/obj/release_shared/qsql_psql.o(.text+0xe6b):qsql_psql.cpp: undefined referen
    23. ce to `PQfreemem'
    24. tmp/obj/release_shared/qsql_psql.o(.text+0x15d9):qsql_psql.cpp: undefined refere
    25. nce to `PQgetvalue'
    26. tmp/obj/release_shared/qsql_psql.o(.text+0x15f8):qsql_psql.cpp: undefined refere
    27. nce to `PQgetisnull'
    28. tmp/obj/release_shared/qsql_psql.o(.text+0x1765):qsql_psql.cpp: undefined refere
    29. nce to `PQexec'
    30. tmp/obj/release_shared/qsql_psql.o(.text+0x1936):qsql_psql.cpp: undefined refere
    31. nce to `PQcmdTuples'
    32. tmp/obj/release_shared/qsql_psql.o(.text+0x1a6f):qsql_psql.cpp: undefined refere
    33. nce to `PQoidValue'
    34. tmp/obj/release_shared/qsql_psql.o(.text+0x1c1a):qsql_psql.cpp: undefined refere
    35. nce to `PQnfields'
    36. tmp/obj/release_shared/qsql_psql.o(.text+0x1cc2):qsql_psql.cpp: undefined refere
    37. nce to `PQfname'
    38. tmp/obj/release_shared/qsql_psql.o(.text+0x1d3a):qsql_psql.cpp: undefined refere
    39. nce to `PQftype'
    40. tmp/obj/release_shared/qsql_psql.o(.text+0x1d6a):qsql_psql.cpp: undefined refere
    41. nce to `PQfsize'
    42. tmp/obj/release_shared/qsql_psql.o(.text+0x1d8b):qsql_psql.cpp: undefined refere
    43. nce to `PQfmod'
    44. tmp/obj/release_shared/qsql_psql.o(.text+0x1e0d):qsql_psql.cpp: undefined refere
    45. nce to `PQftype'
    46. tmp/obj/release_shared/qsql_psql.o(.text+0x1e83):qsql_psql.cpp: undefined refere
    47. nce to `PQfname'
    48. tmp/obj/release_shared/qsql_psql.o(.text+0x1f45):qsql_psql.cpp: undefined refere
    49. nce to `PQexec'
    50. tmp/obj/release_shared/qsql_psql.o(.text+0x1f53):qsql_psql.cpp: undefined refere
    51. nce to `PQresultStatus'
    52. tmp/obj/release_shared/qsql_psql.o(.text+0x1f7c):qsql_psql.cpp: undefined refere
    53. nce to `PQgetvalue'
    54. tmp/obj/release_shared/qsql_psql.o(.text+0x1fa8):qsql_psql.cpp: undefined refere
    55. nce to `PQclear'
    56. tmp/obj/release_shared/qsql_psql.o(.text+0x27cb):qsql_psql.cpp: undefined refere
    57. nce to `PQfinish'
    58. tmp/obj/release_shared/qsql_psql.o(.text+0x289b):qsql_psql.cpp: undefined refere
    59. nce to `PQfinish'
    60. tmp/obj/release_shared/qsql_psql.o(.text+0x296b):qsql_psql.cpp: undefined refere
    61. nce to `PQfinish'
    62. tmp/obj/release_shared/qsql_psql.o(.text+0x2eab):qsql_psql.cpp: undefined refere
    63. nce to `PQconnectdb'
    64. tmp/obj/release_shared/qsql_psql.o(.text+0x2efc):qsql_psql.cpp: undefined refere
    65. nce to `PQstatus'
    66. tmp/obj/release_shared/qsql_psql.o(.text+0x2f4f):qsql_psql.cpp: undefined refere
    67. nce to `PQexec'
    68. tmp/obj/release_shared/qsql_psql.o(.text+0x2f5d):qsql_psql.cpp: undefined refere
    69. nce to `PQresultStatus'
    70. tmp/obj/release_shared/qsql_psql.o(.text+0x2f71):qsql_psql.cpp: undefined refere
    71. nce to `PQclear'
    72. tmp/obj/release_shared/qsql_psql.o(.text+0x2fa4):qsql_psql.cpp: undefined refere
    73. nce to `PQexec'
    74. tmp/obj/release_shared/qsql_psql.o(.text+0x2fb2):qsql_psql.cpp: undefined refere
    75. nce to `PQresultStatus'
    76. tmp/obj/release_shared/qsql_psql.o(.text+0x2fc3):qsql_psql.cpp: undefined refere
    77. nce to `PQerrorMessage'
    78. tmp/obj/release_shared/qsql_psql.o(.text+0x2fed):qsql_psql.cpp: undefined refere
    79. nce to `PQclear'
    80. tmp/obj/release_shared/qsql_psql.o(.text+0x35c8):qsql_psql.cpp: undefined refere
    81. nce to `PQfinish'
    82. tmp/obj/release_shared/qsql_psql.o(.text+0x373b):qsql_psql.cpp: undefined refere
    83. nce to `PQfinish'
    84. tmp/obj/release_shared/qsql_psql.o(.text+0x38cc):qsql_psql.cpp: undefined refere
    85. nce to `PQexec'
    86. tmp/obj/release_shared/qsql_psql.o(.text+0x38db):qsql_psql.cpp: undefined refere
    87. nce to `PQresultStatus'
    88. tmp/obj/release_shared/qsql_psql.o(.text+0x3900):qsql_psql.cpp: undefined refere
    89. nce to `PQclear'
    90. tmp/obj/release_shared/qsql_psql.o(.text+0x3a0d):qsql_psql.cpp: undefined refere
    91. nce to `PQclear'
    92. tmp/obj/release_shared/qsql_psql.o(.text+0x3abc):qsql_psql.cpp: undefined refere
    93. nce to `PQexec'
    94. tmp/obj/release_shared/qsql_psql.o(.text+0x3acb):qsql_psql.cpp: undefined refere
    95. nce to `PQresultStatus'
    96. tmp/obj/release_shared/qsql_psql.o(.text+0x3ae4):qsql_psql.cpp: undefined refere
    97. nce to `PQclear'
    98. tmp/obj/release_shared/qsql_psql.o(.text+0x3bfd):qsql_psql.cpp: undefined refere
    99. nce to `PQclear'
    100. tmp/obj/release_shared/qsql_psql.o(.text+0x3cac):qsql_psql.cpp: undefined refere
    101. nce to `PQexec'
    102. tmp/obj/release_shared/qsql_psql.o(.text+0x3cbb):qsql_psql.cpp: undefined refere
    103. nce to `PQresultStatus'
    104. tmp/obj/release_shared/qsql_psql.o(.text+0x3d74):qsql_psql.cpp: undefined refere
    105. nce to `PQclear'
    106. tmp/obj/release_shared/qsql_psql.o(.text+0x3dec):qsql_psql.cpp: undefined refere
    107. nce to `PQclear'
    108. tmp/obj/release_shared/qsql_psql.o(.text+0x8048):qsql_psql.cpp: undefined refere
    109. nce to `PQescapeBytea'
    110. tmp/obj/release_shared/qsql_psql.o(.text+0x80a4):qsql_psql.cpp: undefined refere
    111. nce to `PQfreemem'
    112. tmp/obj/release_shared/qsql_psql.o(.text+0x8612):qsql_psql.cpp: undefined refere
    113. nce to `PQstatus'
    114. collect2: ld returned 1 exit status
    115. mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlpsql4.dll] Error 1
    116. mingw32-make[1]: Leaving directory `C:/Qt/4.3.3/src/plugins/sqldrivers/psql'
    117. mingw32-make: *** [release-all] Error 2
    To copy to clipboard, switch view to plain text mode 

    Thanks !

  9. #9
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QPSQL problem

    Looks like it doesn't find required symbols in libpq.a. Anyway, I'm sorry but I don't know where's the problem, with reimp or what... I guess you could try compiling whole PSQL with MinGW (you might need MSYS for that) unless you can find readily available binaries somewhere on the internet.
    J-P Nurmi

Similar Threads

  1. problem with opengl, zooming, drawpixels, and origin
    By ntp in forum General Programming
    Replies: 0
    Last Post: 22nd February 2008, 21:48
  2. Tricky problem with ARGB widget / UpdateLayeredWindow
    By nooky59 in forum Qt Programming
    Replies: 3
    Last Post: 21st February 2008, 10:35
  3. QPSQL plugin problem
    By tuxi in forum Qt Programming
    Replies: 0
    Last Post: 12th March 2007, 20:44
  4. fftw problem
    By lordy in forum General Programming
    Replies: 1
    Last Post: 16th March 2006, 21:36
  5. Replies: 16
    Last Post: 7th March 2006, 15:57

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.