Kompilasi masalah dengan curlpp: referensi tidak terdefinisi ke simbol 'curl_easy_setopt@@CURL_OPENSSL_3'

Penjelasan singkat tentang masalah ini:

Setelah menginstal curlpp, saya mencoba mengkompilasi kode c++ yang menggunakan perpustakaan curlpp dan mendapatkan kesalahan berikut:

g++ testCurl.cpp -lcurlpp
/usr/bin/ld: /tmp/ccx5aH5P.o: undefined reference to symbol 'curl_easy_setopt@@CURL_OPENSSL_3'
//usr/lib/x86_64-linux-gnu/libcurl.so.4: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Ada ide bagaimana cara memperbaikinya?

Lebih detail:

Saya pertama kali mencoba menginstal curlpp dari sumber, tetapi setelah menjalankan ./config, saya diberitahu bahwa saya memerlukan boost (ini adalah komputer baru jadi saya belum menginstalnya). Saya menginstal peningkatan. Kemudian saya diberi tahu bahwa saya memerlukan "versi curl yang berfungsi" atau semacamnya. Setelah pencarian cepat di internet, saya menemukan bahwa saya perlu menginstal beberapa versi libcurl-dev. Secara khusus saya menginstal paket: libcurl4-openssl-dev 7.35.0-1ubuntu2.2 Setelah ini, curlpp dikompilasi dan diinstal tanpa masalah.

Terakhir, saya mengambil beberapa kode pengujian umum dan mencoba mengkompilasi menggunakan perintah g++ test.cpp -lcurlpp. Hal ini menyebabkan kesalahan di atas. Saya mencoba mencopot pemasangan curl dan segala sesuatu yang terkait dan memasangnya kembali. Saya juga mencoba menginstal beberapa implementasi libcurl-dev alternatif. Kesalahan yang sama.

Saya telah mencari-cari solusi di internet dan mencoba beberapa hal lainnya. Sejauh ini tidak ada yang berhasil.

Terima kasih sebelumnya atas bantuan apa pun!!


person user2548343    schedule 10.11.2014    source sumber
comment
Saya menemukan perbaikannya, tetapi saya akan membiarkannya jika ada orang lain yang mengalami masalah yang sama. Anda harus mengkompilasi dengan: g++ file.cpp -lcurlpp -lcurl   -  person user2548343    schedule 11.11.2014
comment
Anda dapat menjawab pertanyaan Anda sendiri - sebaiknya hindari memberikan jawaban di komentar.   -  person Craig S. Anderson    schedule 11.11.2014


Jawaban (1)


Saya menemukan perbaikan bodoh. Saya akan meninggalkan ini jika ada orang lain yang mengalami masalah yang sama. Anda harus mengkompilasi dengan: g++ file.cpp -lcurlpp -lcurl

person user2548343    schedule 12.11.2014
comment
Terima kasih, saya mengalami masalah yang sama - dengan pustaka curl-cpp - dan tidak tahu alasannya itu gagal. Saya pikir menghubungkan perpustakaan pembungkus libcurlcpp secara tidak langsung akan terhubung dengan libcurl sebagai ketergantungannya tetapi bukan itu masalahnya. - person Elias Kouskoumvekakis; 27.12.2016