pananning 发表于 2025-6-6 23:40

Crypto++可以直接把源码集成在项目里吗

怎么把Crypto++源码直接集成在项目里,我放进去以后编译一直报错,qt程序所以不能使用静态库,编译了dll来使用不知为什么也一直报错

m_h 发表于 2025-6-6 23:47

{:1_924:}来个简单示例以及调用 整个过程?光描述很难理解 你要提问 的准确范围
1 QT程序不能使用静态?
2 编译dll 运行后报错报错信息也无。
目前猜测 是否 QT有 Crypto 完事你又搞了个 Crypto 冲突了。
或者你代码调用本身就有问题。 调试吧。 win下最好调试了 linux 没win下方便三方软件多。

pananning 发表于 2025-6-7 00:42

m_h 发表于 2025-6-6 23:47
来个简单示例以及调用 整个过程?光描述很难理解 你要提问 的准确范围
1 QT程序不能使用静态 ...

qt官方不都是动态链接的吗,能单独给一个文件使用静态链接吗,我也小白不懂,代码的话明天贴吧,也没什么特别的就用里面的类创建了个变量。

pananning 发表于 2025-6-7 00:43

m_h 发表于 2025-6-6 23:47
来个简单示例以及调用 整个过程?光描述很难理解 你要提问 的准确范围
1 QT程序不能使用静态 ...

不是冲突,命名空间不一样

BrutusScipio 发表于 2025-6-7 00:55

编译完成的dll, 是链接报错吧 主程序文件编译都过不了说明缺少符号声明是不是头文件依赖有问题 链接失败无非是符号定义重定义或缺少定义,看看编译选项,64位程序要用64位动态库

nanaqilin 发表于 2025-6-7 10:49

楼主,你把错误信息贴一下,你这样问,神仙也猜不出来是啥问题

fatiaozhang9527 发表于 2025-6-7 11:59

全靠大家猜想了

LXGZJ237 发表于 2025-6-7 12:43

pananning 发表于 2025-6-7 00:42
qt官方不都是动态链接的吗,能单独给一个文件使用静态链接吗,我也小白不懂,代码的话明天贴吧,也没什么 ...

要从源码编译QT的编译库,你用官方的就是动态没法改,自己编译个静态的才行,然后用这个静态的编译库编译你的程序

pananning 发表于 2025-6-7 16:01

1>cpu.obj : error LNK2019: 无法解析的外部符号 XGETBV64,函数 "unsigned __int64 __cdecl CryptoPP::XGetBV(unsigned int)" (?XGetBV@CryptoPP@@YA_KI@Z) 中引用了该符号
1>cpu.obj : error LNK2019: 无法解析的外部符号 CPUID64,函数 "bool __cdecl CryptoPP::CpuId(unsigned int,unsigned int,unsigned int * const)" (?CpuId@CryptoPP@@YA_NIIQEAI@Z) 中引用了该符号
CryptoPP::Weak::MD5 hash;
代码和错误
页: [1]
查看完整版本: Crypto++可以直接把源码集成在项目里吗