为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【需求说明】Win10系统需要使用QT编译器QT 5.15.2 MinGW 64-bit编译驱动,是否能提供Win10下该编译器编译驱动依赖的libDMDPI.a文件?现在是MSVC编译的DMDPI.lib文件。
【DM版本】:dm8_20251021_x86_kylin10_sp3_64和dm8_20251020_x86_win_64
【QT驱动源码】:qt_src-2414-20250814.zip
【编译器】QT编译器都为QT 5.15.2 MinGW 64-bit
【问题描述】:
1、参考https://eco.dameng.com/community/article/128aaaf22832dfcb61dfbe3c075aa372,麒麟系统下配置QT编译选项:
编译成功后,驱动依赖如下:
没有依赖libdmdpi.so,只将编译的libqsqldm.so放在运行目录的sqldrivers下面,可以正常连接DM数据库。
2、类似1方式,在Win10系统下面,配置QT编译选项:
编译成功后,使用depends.exe查看依赖:
依赖DMDPI.dll,仅将qsqldm.dll拷贝到sqldrivers下面,连接报错Driver not loaded.
需要将DM安装目录下面依赖库都拷贝到程序目录下面才能正常加载。
但是这样会导致自身程序变得很大。
请问下,在Win10下面怎么编译配置,生成的qsqldm.dll不用再依赖其他DLL库,和麒麟系统编译一样,只需要拷贝编译生成的这一个库即可连接成功呢?
-ldl是Linux下面的编译选项,windows下面不能使用。
已尝试在win10下面静态编译,但是还需要依赖其他DLL库,不确定静态编译选项是否没有配置正确。
有win10下面静态编译成功的,或者其他方式解决该问题的,麻烦解答下,多谢!
目前依赖的DMDPI.dll是MSVC编译的,实际使用需要用MinGW编译。
