Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Instalacja biblioteki CURL dla Dev-C++

Ostatnio zmodyfikowano 2008-02-10 21:41
Autor Wiadomość
DejaVu
Temat założony przez niniejszego użytkownika
Instalacja biblioteki CURL dla Dev-C++
» 2008-02-10 21:41:52
[tutorial]

Do czego jest biblioteka CURL?

Curl jest biblioteką umożliwiającą transferowanie plików ze wsparciem składni URL. Biblioteka wspiera takie rodzaje komunikacji jak: FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS i FILE. Curl obsługuje również komunikację SSL, wysyłanie formularzy HTTP POST, HTTP PUT, wgrywanie plików na serwer FTP, wgrywanie plików za pomocą formularzy HTTP, obsługę proxy, ciasteczka, autoryzację użytkownik+hasło (Basic, Digest, NTLM, Negotiate, kerberos...), wznawianie transferu plików, tunelowanie proxy i inne użyteczne techniki komunikacji.

Instalacja biblioteki CURL

Proces instalacji biblioteki CURL dla Dev-C++ wymaga zainstalowania przez nas następujących pakietów:
[li]zlib[/li]
[li]openssl[/li]
[li]libcurl[/li]
Aby instalacja przebiegła szybko i bezproblemowo warto skorzystać z menu Narzędzia -> Sprawdź czy są nowe uaktualnienia/pakiety.

Jak uruchomić pierwszy program?

Uruchomienie pierwszego programu może dostarczyć wielu kłopotów... a wszystko przez konieczność dolinkowania odpowiednich bilbiotek. Aby skompilować program wykorzystujący bibliotekę CURL w Dev-C++ musimy utworzyć projekt, a następnie w konsolidatorze wpisać następujące linijki:
-l curl
-l winmm
-l ssl
-l crypto
-l z
-l gdi32
-l ws2_32
Dodatkowo, w ramce Kompilator C++ musimy wpisać:
-DCURL_STATICLIB
Jeśli nie miałeś jeszcze do czynienia z projektami w Dev-C++, możesz o nich przeczytać na stronie http://ddt.pl/kursy/?LessonId=118.

Jakie problemy rozwiązuje ten temat?

Powyższe wpisy rozwiązują następujące błędy kompilacji:
undefined reference to `__WSAFDIsSet@8'
undefined reference to `_imp__curl_easy_cleanup'
undefined reference to `_imp__curl_easy_init'
undefined reference to `_imp__curl_easy_perform'
undefined reference to `_imp__curl_easy_setopt'
undefined reference to `accept@12'
undefined reference to `ASN1_STRING_data'
undefined reference to `ASN1_STRING_length'
undefined reference to `ASN1_STRING_to_UTF8'
undefined reference to `ASN1_STRING_type'
undefined reference to `bind@12'
undefined reference to `closesocket@4'
undefined reference to `connect@12'
undefined reference to `CRYPTO_free'
undefined reference to `CRYPTO_malloc'
undefined reference to `d2i_PKCS12_fp'
undefined reference to `DES_ecb_encrypt'
undefined reference to `DES_set_key'
undefined reference to `DES_set_odd_parity'
undefined reference to `ENGINE_by_id'
undefined reference to `ENGINE_finish'
undefined reference to `ENGINE_free'
undefined reference to `ENGINE_get_first'
undefined reference to `ENGINE_get_id'
undefined reference to `ENGINE_get_next'
undefined reference to `ENGINE_init'
undefined reference to `ENGINE_load_builtin_engines'
undefined reference to `ENGINE_load_private_key'
undefined reference to `ENGINE_set_default'
undefined reference to `ERR_error_string'
undefined reference to `ERR_error_string_n'
undefined reference to `ERR_free_strings'
undefined reference to `ERR_get_error'
undefined reference to `ERR_remove_state'
undefined reference to `EVP_cleanup'
undefined reference to `EVP_PKEY_copy_parameters'
undefined reference to `EVP_PKEY_free'
undefined reference to `GENERAL_NAMES_free'
undefined reference to `gethostbyname@4'
undefined reference to `getsockname@12'
undefined reference to `getsockopt@20'
undefined reference to `htons@4'
undefined reference to `inet_addr@4'
undefined reference to `inflate'
undefined reference to `inflateEnd'
undefined reference to `inflateInit_'
undefined reference to `inflateInit2_'
undefined reference to `ioctlsocket@12'
undefined reference to `listen@8'
undefined reference to `MD4_Final'
undefined reference to `MD4_Init'
undefined reference to `MD4_Update'
undefined reference to `MD5_Final'
undefined reference to `MD5_Init'
undefined reference to `MD5_Update'
undefined reference to `PKCS12_free'
undefined reference to `PKCS12_parse'
undefined reference to `PKCS12_PBE_add'
undefined reference to `RAND_file_name'
undefined reference to `RAND_load_file'
undefined reference to `RAND_screen'
undefined reference to `RAND_status'
undefined reference to `recv@16'
undefined reference to `select@20'
undefined reference to `send@16'
undefined reference to `setsockopt@20'
undefined reference to `sk_num'
undefined reference to `sk_value'
undefined reference to `socket@12'
undefined reference to `SSL_CIPHER_get_name'
undefined reference to `SSL_connect'
undefined reference to `SSL_CTX_callback_ctrl'
undefined reference to `SSL_CTX_check_private_key'
undefined reference to `SSL_CTX_ctrl'
undefined reference to `SSL_CTX_free'
undefined reference to `SSL_CTX_load_verify_locations'
undefined reference to `SSL_CTX_new'
undefined reference to `SSL_CTX_set_cipher_list'
undefined reference to `SSL_CTX_set_default_passwd_cb'
undefined reference to `SSL_CTX_set_default_passwd_cb_userdata'
undefined reference to `SSL_CTX_set_verify'
undefined reference to `SSL_CTX_use_certificate'
undefined reference to `SSL_CTX_use_certificate_chain_file'
undefined reference to `SSL_CTX_use_certificate_file'
undefined reference to `SSL_CTX_use_PrivateKey'
undefined reference to `SSL_CTX_use_PrivateKey_file'
undefined reference to `SSL_free'
undefined reference to `SSL_get_certificate'
undefined reference to `SSL_get_current_cipher'
undefined reference to `SSL_get_error'
undefined reference to `SSL_get_peer_certificate'
undefined reference to `SSL_get_privatekey'
undefined reference to `SSL_get_verify_result'
undefined reference to `SSL_get1_session'
undefined reference to `SSL_library_init'
undefined reference to `SSL_load_error_strings'
undefined reference to `SSL_new'
undefined reference to `SSL_new'
undefined reference to `SSL_pending'
undefined reference to `SSL_read'
undefined reference to `SSL_SESSION_free'
undefined reference to `SSL_set_connect_state'
undefined reference to `SSL_set_fd'
undefined reference to `SSL_set_session'
undefined reference to `SSL_shutdown'
undefined reference to `SSL_write'
undefined reference to `SSLeay'
undefined reference to `SSLv2_client_method'
undefined reference to `SSLv23_client_method'
undefined reference to `SSLv3_client_method'
undefined reference to `timeGetTime@0'
undefined reference to `TLSv1_client_method'
undefined reference to `UI_OpenSSL'
undefined reference to `WSACleanup@0'
undefined reference to `WSAGetLastError@0'
undefined reference to `WSAStartup@8'
undefined reference to `X509_free'
undefined reference to `X509_get_ext_d2i'
undefined reference to `X509_get_issuer_name'
undefined reference to `X509_get_pubkey'
undefined reference to `X509_get_subject_name'
undefined reference to `X509_NAME_ENTRY_get_data'
undefined reference to `X509_NAME_get_entry'
undefined reference to `X509_NAME_get_index_by_NID'
undefined reference to `X509_NAME_oneline'
undefined reference to `X509_STORE_CTX_get_current_cert'
undefined reference to `X509_verify_cert_error_string'
undefined reference to `zlibVersion'
[/tutorial]
P-286
« 1 »
  Strona 1 z 1