Bonjours,
Je voudrai savoir si un tutoriel sur openssl est disponible j.'ai rien trouver pour le moment ?
J'ai regarder sur le site d'openssl mai je ne sai pas ce qu' il faut télécharger
Merci'davance
Bonjours,
Je voudrai savoir si un tutoriel sur openssl est disponible j.'ai rien trouver pour le moment ?
J'ai regarder sur le site d'openssl mai je ne sai pas ce qu' il faut télécharger
Merci'davance
Après quelque et longue tentative voici ou j'en suis:
installation ou plutôt placement du fichier openssl-1.1.1c-win64-mingw.zip.
code du fichier:
sous code block:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #include <iostream> #include <stdio.h> #include <C:\Users\UseCH\Documents\Devcpp\openssl-1.1.1c-win64-mingw\include\openssl\ssl.h> #include <C:\Users\UseCH\Documents\Devcpp\openssl-1.1.1c-win64-mingw\include\openssl\evp.h> #pragma comment (lib, "libeay32.lib" ) #pragma comment (lib, "ssleay32.lib" ) //using namespace std; int main() { SSL_library_init(); OpenSSL_add_all_algorithms(); EVP_cleanup(); std::cout << "Hello world!" << std::endl; return 0; }
cadre de gauche (link lbrarie)
C:\Users\UseCH\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libssl.a
C:\Users\UseCH\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libcrypto.a
cadre de droite:
option compilateur -> linker setting > -lssl -lcrypto
dans l'onglet search directory-> compiler:
C:\UseCH\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\include
dans compilateur -> linker
C:\UseCH\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib
l'erreur est la suivante:
Le fichier est bien présent pragma aussi, je ne vois ou est le problème. un petit coup de main serai la bienvenue.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 ||=== Build: Debug in testopenssl (compiler: GNU GCC Compiler) ===| C:\Users\UseCH\Documents\Devcpp\testopenssl\testopenssl\main.cpp|6|warning: ignoring #pragma comment [-Wunknown-pragmas]| C:\Users\UseCH\Documents\Devcpp\testopenssl\testopenssl\main.cpp|7|warning: ignoring #pragma comment [-Wunknown-pragmas]| obj\Debug\main.o||In function `main':| C:\Users\UseCH\Documents\Devcpp\testopenssl\testopenssl\main.cpp|13|undefined reference to `OPENSSL_init_ssl'| C:\Users\UseCH\Documents\Devcpp\testopenssl\testopenssl\main.cpp|14|undefined reference to `OPENSSL_init_crypto'| ||error: ld returned 1 exit status| ||=== Build failed: 3 error(s), 2 warning(s) (0 minute(s), 0 second(s)) ===|
rappel windows 10 et code block
Merci d'avance
Je ne connais pas Code Blocks
Ceci dit vu l'erreur retournée je ne pense pas que ce soit le problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 #include <openssl/ssl.h> #include <openssl/evp.h>
Peux-tu nous donner la ligne de compilation complète générée par l'IDE ?
Sinon je ne comprends pas pourquoi tu as deux répertoires "lib".
Merci pour ta réponse , voici le log plus complet. La machine est plus la même a peux de chose près mai la disposition est identique dans code block.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -------------- Build: Debug in testopenssl (compiler: GNU GCC Compiler)--------------- mingw32-g++.exe -LC:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib -LC:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib -o bin\Debug\testopenssl.exe obj\Debug\main.o -lmingw32 -lSDL2main -lSDL2 -lssl -lcrypto C:\CodeBlocks\MinGW\lib\libmingw32.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2main.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2.dll.a C:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libssl.a C:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libcrypto.a obj\Debug\main.o: In function `main': C:/Users/Xerox/Documents/Devcpp/testopenssl/testopenssl/main.cpp:13: undefined reference to `OPENSSL_init_ssl' C:/Users/Xerox/Documents/Devcpp/testopenssl/testopenssl/main.cpp:14: undefined reference to `OPENSSL_init_crypto' collect2.exe: error: ld returned 1 exit status Process terminated with status 1 (0 minute(s), 0 second(s)) 3 error(s), 0 warning(s) (0 minute(s), 0 second(s))
La honnêtement je ne sais pas trop la ligne de compil à l'air OK (même si je ne sais pas pourquoi l'IDE met explicitement le chemin vers les librairies à la fin).
Le problème se trouve à l'édition des liens ça donne l'impression que tu n'as pas les bonne lib ou les bonnes versions.
Peut être que quelqu'un d'autre aura une idée ?
Ces includes sont ridicules. On ne met jamais le path complet...
Tu utilises Dev-cpp ou C::B ??
Dev-cpp/C::B (mingw) utilisait des .a et non des .lib.
Enfin encore faudrait-il qu'il accepte cette syntaxe déjà mais...
Non il l'accepte pas. Et il te le dit depuis le début. Les messages d'erreur sont faits pour être lus.![]()
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Merci pour ta réponse
Je ne savais pas pour le path complet, dans le doute je voulait être sur du chemin d'accès
ce code est le résulta d'une recherche, qui forcement ne donne pas toujours des bon résulta si les information trouvée ne son pas approprier.
Si la doc était un peux plus explicite sa éviterai ce problème, mai la n'est pas le sujet. (quoi que...)
Si tu as lu mon post il s'agis bien de code block.
bon c'est parti pour remanier le tout ....![]()
La nouvelle mouture... même problème
donne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 #include <iostream> #include <stdio.h> #include <ssl.h> #include <evp.h> #include <opensslv.h> int main() { SSL_library_init(); OpenSSL_add_all_algorithms(); EVP_cleanup(); std::cout << "Hello world!" << std::endl; return 0; }
Merci pour votre patience
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 -------------- Build: Debug in testopenssl (compiler: GNU GCC Compiler)--------------- mingw32-g++.exe -Wall -fexceptions -g -std=c++1z -IC:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\include -IC:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\include -IC:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\include\openssl -c C:\Users\Xerox\Documents\Devcpp\testopenssl\testopenssl\main.cpp -o obj\Debug\main.o mingw32-g++.exe -LC:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib -LC:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib -o bin\Debug\testopenssl.exe obj\Debug\main.o -lmingw32 -lSDL2main -lSDL2 -lssl -lcrypto C:\CodeBlocks\MinGW\lib\libmingw32.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2main.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2.a C:\CodeBlocks\SDL2-2.0.9\i686-w64-mingw32\lib\libSDL2.dll.a C:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libssl.a C:\Users\Xerox\Documents\Devcpp\openssl-1.1.1c-win64-mingw\lib\libcrypto.a obj\Debug\main.o: In function `main': C:/Users/Xerox/Documents/Devcpp/testopenssl/testopenssl/main.cpp:10: undefined reference to `OPENSSL_init_ssl' C:/Users/Xerox/Documents/Devcpp/testopenssl/testopenssl/main.cpp:11: undefined reference to `OPENSSL_init_crypto' collect2.exe: error: ld returned 1 exit status Process terminated with status 1 (0 minute(s), 0 second(s)) 3 error(s), 0 warning(s) (0 minute(s), 0 second(s))![]()
C'est un problème de linker, pas de code.
Il faut lui dire quels libs il faut linker. Et on ne peut pas deviner lesquelles tu espères faire fonctionner... si tenté que tu en utilises déjà.
Tu as toutes les options possibles sur le site officiel https://wiki.openssl.org/index.php/Binaries
Et tu as même un github https://github.com/openssl/openssl
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Partager