QT6编译、安装DB2驱动

一、安装驱动、补丁包:
ibm_db2_v9.7fp5_ntx64_server.zip,只装客户端
db2_v9.7fp11_ntx64_odbc_cli.zip,直接覆盖安装目录

二、编译DB2驱动:
我是编译VS2022的驱动,启动VS2022中的“x86 Native Tools Command Prompt for VS 2022”命令行。

  1. mkdir D:\qt-db2-build
  2. cd D:\qt-db2-build
  3.  
  4. :: 编译
  5. qt-cmake -G "Ninja Multi-Config" ^
  6.   "D:\Qt\6.9.1\Src\qtbase\src\plugins\sqldrivers" ^
  7.   -DDB2_INCLUDE_DIR="D:\Program Files\IBM\SQLLIB\include" ^
  8.   -DDB2_LIBRARY="D:\Program Files\IBM\SQLLIB\lib\db2cli.lib" ^
  9.   -DCMAKE_INSTALL_PREFIX="D:\Qt\6.9.1\msvc2022_64" ^
  10.   -DCMAKE_CONFIGURATION_TYPES="Release;Debug"
  11.  
  12. :: 构建
  13. cmake –build .
  14.  
  15. :: 安装 Release
  16. cmake –install . –config Release
  17.  
  18. :: 安装 Debug
  19. cmake –install . –config Debug
  20.  

三、看驱动目录是否有下列文件

  1. D:\Qt\6.9.1\msvc2022_64\plugins\sqldrivers 的目录
  2.  
  3. 2026/04/06  11:30    <DIR>          .
  4. 2025/05/29  13:07    <DIR>          ..
  5. 2026/04/06  11:28            83,968 qsqldb2.dll
  6. 2026/04/06  11:28         2,068,480 qsqldb2.pdb
  7. 2026/04/06  11:28           273,920 qsqldb2d.dll
  8. 2026/04/06  11:28         3,248,128 qsqldb2d.pdb
  9. 2025/05/28  23:26           137,352 qsqlibase.dll
  10. 2025/05/28  23:26           485,000 qsqlibased.dll
  11. 2026/04/06  11:28         1,949,696 qsqlite.dll
  12. 2026/04/06  11:28         7,327,744 qsqlite.pdb
  13. 2026/04/06  11:28         2,665,984 qsqlited.dll
  14. 2026/04/06  11:28         6,008,832 qsqlited.pdb
  15. 2025/05/28  23:26            88,712 qsqlmimer.dll
  16. 2025/05/28  23:26           243,848 qsqlmimerd.dll
  17. 2025/05/28  23:26           128,648 qsqloci.dll
  18. 2025/05/28  23:26           398,472 qsqlocid.dll
  19. 2026/04/06  11:28           112,128 qsqlodbc.dll
  20. 2026/04/06  11:28         2,207,744 qsqlodbc.pdb
  21. 2026/04/06  11:28           361,472 qsqlodbcd.dll
  22. 2026/04/06  11:28         3,313,664 qsqlodbcd.pdb
  23. 2025/05/28  23:27           106,120 qsqlpsql.dll
  24. 2025/05/28  23:27           318,600 qsqlpsqld.dll
  25.               20 个文件     31,528,512 字节
  26.                2 个目录 341,513,039,872 可用字节

原文作者: BG6RSH | 查看原帖

此条目发表在学习笔记分类目录。将固定链接加入收藏夹。

《QT6编译、安装DB2驱动》有一条回应

  1. BG6RSH说:
    1. D:\qt-db2-build>qt-cmake -G "Ninja Multi-Config" ^
    2. More?   "D:\Qt\6.9.1\Src\qtbase\src\plugins\sqldrivers" ^
    3. More?   -DDB2_INCLUDE_DIR="D:\Program Files\IBM\SQLLIB\include" ^
    4. More?   -DDB2_LIBRARY="D:\Program Files\IBM\SQLLIB\lib\db2cli.lib" ^
    5. More?   -DCMAKE_INSTALL_PREFIX="D:\Qt\6.9.1\msvc2022_64" ^
    6. More?   -DCMAKE_CONFIGURATION_TYPES="Release;Debug"
    7. — The CXX compiler identification is MSVC 19.50.35728.0
    8. — The C compiler identification is MSVC 19.50.35728.0
    9. — Detecting CXX compiler ABI info
    10. — Detecting CXX compiler ABI info – done
    11. — Check for working CXX compiler: D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.50.35717/bin/Hostx64/x64/cl.exe – skipped
    12. — Detecting CXX compile features
    13. — Detecting CXX compile features – done
    14. — Detecting C compiler ABI info
    15. — Detecting C compiler ABI info – done
    16. — Check for working C compiler: D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.50.35717/bin/Hostx64/x64/cl.exe – skipped
    17. — Detecting C compile features
    18. — Detecting C compile features – done
    19. — Performing Test CMAKE_HAVE_LIBC_PTHREAD
    20. — Performing Test CMAKE_HAVE_LIBC_PTHREAD – Failed
    21. — Looking for pthread_create in pthreads
    22. — Looking for pthread_create in pthreads – not found
    23. — Looking for pthread_create in pthread
    24. — Looking for pthread_create in pthread – not found
    25. — Found Threads: TRUE
    26. — Performing Test HAVE_STDATOMIC
    27. — Performing Test HAVE_STDATOMIC – Success
    28. — Found WrapAtomic: TRUE
    29. — Building for multiple configurations: RelWithDebInfo;Debug.
    30. — Main configuration is: RelWithDebInfo.
    31.  
    32. — Configuration summary has been written to D:/qt-db2-build/config.summary
    33.  
    34. — Configuring done (7.2s)
    35. — Generating done (0.2s)
    36. — Build files have been written to: D:/qt-db2-build
    37.  
    38. D:\qt-db2-build>cmake –build .
    39. [52/52] Linking CXX shared module plugins\sqldrivers\qsqlite.dll
    40.  
    41. D:\qt-db2-build>cmake –install . –config Release
    42. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfig.cmake
    43. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfigVersion.cmake
    44. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfigVersionImpl.cmake
    45. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginTargets.cmake
    46. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginAdditionalTargetInfo.cmake
    47. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfig.cmake
    48. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfigVersion.cmake
    49. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfigVersionImpl.cmake
    50. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginTargets.cmake
    51. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginAdditionalTargetInfo.cmake
    52. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfig.cmake
    53. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfigVersion.cmake
    54. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfigVersionImpl.cmake
    55. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginTargets.cmake
    56. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginAdditionalTargetInfo.cmake
    57.  
    58. D:\qt-db2-build>cmake –install . –config Debug
    59. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfig.cmake
    60. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfigVersion.cmake
    61. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginConfigVersionImpl.cmake
    62. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqlodbcd.dll
    63. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginTargets.cmake
    64. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginTargets-debug.cmake
    65. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqlodbcd.pdb
    66. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QODBCDriverPluginAdditionalTargetInfo.cmake
    67. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfig.cmake
    68. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfigVersion.cmake
    69. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginConfigVersionImpl.cmake
    70. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqldb2d.dll
    71. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginTargets.cmake
    72. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginTargets-debug.cmake
    73. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqldb2d.pdb
    74. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QDB2DriverPluginAdditionalTargetInfo.cmake
    75. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfig.cmake
    76. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfigVersion.cmake
    77. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginConfigVersionImpl.cmake
    78. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqlited.dll
    79. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginTargets.cmake
    80. — Installing: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginTargets-debug.cmake
    81. — Installing: D:/Qt/6.9.1/msvc2022_64/plugins/sqldrivers/qsqlited.pdb
    82. — Up-to-date: D:/Qt/6.9.1/msvc2022_64/lib/cmake/Qt6Sql/Qt6QSQLiteDriverPluginAdditionalTargetInfo.cmake
    83. — Writing install marker for config Debug: D:/qt-db2-build/qt_sbom/finished_install-Debug.cmake
    84. — Skipping SBOM finalization because not all configs were installed.
    85.  
    86. D:\qt-db2-build>

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理。