Qt | Can';我不能让任何加密库工作

Qt | Can';我不能让任何加密库工作,qt,encryption,shared-libraries,Qt,Encryption,Shared Libraries,一个多星期以来,我尝试在QT中实现我可能找到的每个加密库来加密文件和字符串,但这对我来说似乎是不可能的。 我从一个干净的Ubuntu安装开始,更新了所有内容,安装了QT,由于Openssl已经安装在Ubuntu上,我试着从这个开始。 我读过一些教程,尝试过一些例子,但我所做的一切似乎都不能解决我的“未定义引用”问题。 我在谷歌上搜索了正确的库,我可能不得不添加到项目文件中,但没有任何效果。 由于Openssl对我不起作用,我用谷歌搜索了“QCA”、“Crypto++”、“MCrypt”和我找到的

一个多星期以来,我尝试在QT中实现我可能找到的每个加密库来加密文件和字符串,但这对我来说似乎是不可能的。 我从一个干净的Ubuntu安装开始,更新了所有内容,安装了QT,由于Openssl已经安装在Ubuntu上,我试着从这个开始。 我读过一些教程,尝试过一些例子,但我所做的一切似乎都不能解决我的“未定义引用”问题。 我在谷歌上搜索了正确的库,我可能不得不添加到项目文件中,但没有任何效果。 由于Openssl对我不起作用,我用谷歌搜索了“QCA”、“Crypto++”、“MCrypt”和我找到的一些公共图书馆。 在前三个库中,我再次遇到了“未定义引用”错误,而其他库要么已经删除了代码,要么在代码本身的数据类型之间进行了错误的转换

我对所有密码技术都不熟悉,但我根本无法让它工作。 如果有人能让我从痛苦中解脱出来,帮助我从一个干净的安装了QT的ubuntu中获得任何库,那就太棒了。 我必须做点错事……我在网上找到的教程不可能对其他人都适用

例如,我安装了“libmcrypt dev”、“libmcrypt4”和“mcrypt”包,并遵循下面的代码示例: include工作正常,可以找到头文件,并突出显示mcrypt类的代码,所以它应该可以工作,对吗? 但当我试图编译代码时,在使用mcrypt函数的每一行中都会出现“undefined reference”错误。 其他所有的图书馆也是如此……尽管我找不到其他图书馆遗漏的任何东西。 任何地方都没有说明额外的包含,也没有我必须包含在项目文件中的任何额外的库引用

我做错了什么? 我担心我也没有什么东西可以给你们看,除了你们想看到一个包含“未定义引用”错误的巨大列表-/

如果我尝试这样做:

#include <mcrypt.h>

int main()
{
    MCRYPT td = mcrypt_module_open("rijndael-256", NULL, "cbc", NULL);
    mcrypt_module_close(td);
}
项目文件:

QT       += core

QT       -= gui

TARGET = untitled
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app


SOURCES += main.cpp

错误:未定义的引用表示链接器无法找到库本身。它有您包含的头文件,但看不到源文件。要解决此问题,您必须告诉链接器源在哪里,因此请添加
*.pro
文件添加行,例如
libmcrypt
库:

LIBS+=-L/path/to-lmcrypt


在linux中,如果您已使用apt get install或类似工具安装,-L通常不需要

谢谢,这就解决了问题。我现在还使用openssl添加了一行代码:LIBS+=-lcrypto
QT       += core

QT       -= gui

TARGET = untitled
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app


SOURCES += main.cpp