일주일이 지나면 파일과 문자열을 암호화하기 위해 QT를 찾을 수있는 모든 Cryptography-Library를 구현하려고했지만 불가능한 것처럼 보입니다. 깨끗한 우분투 - 설치로 시작하여 모든것을 업데이트하고, QT를 설치했으며, 우분투에 Openssl이 이미 설치되어 있기 때문에 시작하려고했습니다. 일부 자습서를 읽고 예제를 시도했지만 "정의되지 않은 참조"문제를 해결하지 못했습니다. 내가 프로젝트 파일에 추가해야 할 올바른 라이브러리를 찾았지만 아무 것도 효과가 없었습니다. Openssl이 나에게 도움이되지 않았기 때문에 "QCA", "Crypto ++", "MCrypt"및 내가 찾은 일부 공립 도서관을 통해 봤습니다. 처음 세 번 째로 "정의되지 않은 참조"오류가 다시 발생했고 다른 라이브러리는 코드 자체에서 데이터 유형간에 코드를 잘못 추출했거나 다른 변환을 수행했습니다.Qt | 모든 암호화 라이브러리를 사용할 수 없습니다.
저는 전체 암호화 기능이 처음 이었지만 전혀 작동하지 않습니다. 누군가 내 고통에서 벗어날 수 있고 QT를 사용하여 깨끗한 우분투 설치에서 어떤 라이브러리가 작동하도록 도울 수 있다면 정말 멋질 것입니다. 난 그냥 뭔가 잘못해야만 .... 웹에서 찾은 자습서가 다른 사람에게 잘 작동하고있는 것은 아닙니다. 예를 들어
는 .... 나는 "libmcrypt-DEV", "libmcrypt4"와 "Mcrypt 라이브러리"패키지를 설치하고 여기에 코드 예제를 따라 다음은 좋은 작품을 포함 mcrypt linux how to use rijndael 256 cbc는, 헤더 파일을 찾을 수 있으며, mcrypt 클래스의 코드가 강조 표시되어 있으므로 올바르게 작동해야합니다. 그러나 코드를 컴파일하려고 할 때 mcrypt의 함수를 사용하는 모든 줄에서 "정의되지 않은 참조"오류가 발생합니다. 이것은 다른 모든 라이브러리에서도 발생했는데 .... 다른 사람들이 누락 된 것을 발견 할 수는 없지만. 프로젝트 파일에 포함시켜야하는 추가 라이브러리 포함 사항이 없습니다.내가 뭘 잘못하고 있니? "정의되지 않은 참조"오류가있는 거대한 목록을보고 싶다는 점을 제외하고 나는 너희에게 보여줄 것이 아무것도 없다는 것을 두려워한다. : -/
가내가 그런 걸하려고하면 :
error: undefined reference to `mcrypt_module_open'
error: undefined reference to `mcrypt_module_close'
프로젝트 파일은 다음과 같은 오류
#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
고마워, 그게 해결. 나는 또한 라인을 추가하는 것으로 openssl을 사용하고있다 : LIBS + = -lcrypto – Endauriel