Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam.
Pewnie sprawa jest prosta, ale nie mogę jakoś znaleźć rozwiązania, a może ktoś z Was będzie wiedział. Chodzi mi o to jaką opcję dla g++ powinienem dodać, żeby skompilować program z użyciem libcrypto++. Wszystkie pakiety związane z libcrypto++ mam zainstalowane. Próbowałem dawać -lcrypto++,
-lcryptopp -libcrypto++, -libcryptopp, ale nie działa.
Przykładowy program:
#include <cryptopp/md5.h> #include <cryptopp/filters.h> #include <cryptopp/files.h> #include <cryptopp/hex.h> #include <iostream> using namespace CryptoPP; using namespace std; int main( int argc, char** argv ) { MD5 hash; byte buffer[2 * MD5::DIGESTSIZE]; //output size of the buffer FileSource f(argv[1], true, new HashFilter(hash, new HexEncoder(new ArraySink(buffer,2 * MD5::DIGESTSIZE)))); cout << string((const char*)buffer,2 * MD5::DIGESTSIZE) << endl; return 0; }
Offline
jakie dostajesz komunikaty o błędach? zainstalowałem sobie libcrypto++-dev by pomóc w analizie błędów, ale jakoś tak cały czas dostaję
crypt.cc:1:26: error: cryptopp/md5.h: No such file or directory crypt.cc:2:30: error: cryptopp/filters.h: No such file or directory crypt.cc:3:28: error: cryptopp/files.h: No such file or directory crypt.cc:4:26: error: cryptopp/hex.h: No such file or directory crypt.cc:8: error: ‘CryptoPP’ is not a namespace-name crypt.cc:8: error: expected namespace-name before ‘;’ token crypt.cc: In function ‘int main(int, char**)’: crypt.cc:13: error: ‘MD5’ was not declared in this scope crypt.cc:13: error: expected `;' before ‘hash’ crypt.cc:14: error: ‘byte’ was not declared in this scope crypt.cc:14: error: expected `;' before ‘buffer’ crypt.cc:16: error: ‘FileSource’ was not declared in this scope crypt.cc:16: error: expected `;' before ‘f’ crypt.cc:19: error: ‘buffer’ was not declared in this scope
Offline
Komunikaty mam dokładnie takie same jak u Ciebie. Przykład był ze strony:
http://www.cryptopp.com/fom-serve/cache/1.html
---------- EDIT
1) W include'ach trzeba dać <crypto++/md5.h> itp.
2) Kompilacja g++ nazwa.cpp -lcrypto++5.2
I ładnie się kompiluje.
Offline