我要编译使用qca的项目。我有2个版本的Qt安装4.8.6和5.5。通过4.8.6编译。操作系统:Ubuntu 15.10。链接-lqca
关于此代码:
QCA::Initializer init;
if(!QCA::isSupported("sha256")) {
qFatal("SHA256 not supported!");
}
我退出qFatal。 我安装了libqca2-dev和libqca-plugin-ossl,qcatool2确定了这一点并显示了所有插件。
如果我尝试通过以下方式手动加载:
foreach (QString path, QCA::pluginPaths()) {
QString fullname = path + "/crypto/libqca-ossl.so";
QPluginLoader loader(fullname);
loader.load();
if (loader.isLoaded())
break;
else{
QString error = loader.errorString();
qDebug() << error;
}
}
我收到了这条消息:
"The plugin '/usr/local/Trolltech/Qt-4.8.6/plugins/crypto/libqca-ossl.so' uses incompatible Qt library. Expected build key "x86_64 linux g++-5.2.1 full-config", got "x86_64 linux g++-4 full-config"
有人能解释一下这是什么意思,我该怎样做才能自动制作qca加载插件?
答案 0 :(得分:1)
您的错误基本上告诉您,您的程序是使用g++5.2.1
构建的,但是正在尝试为使用g++4
构建的内容加载插件。您需要一个g++5.2.1
插件才能使其正常运行。试着自己构建它。
请注意,QCA不适用于Qt 5.x,仅适用于4.x!