2014-11-10 8 views
6

Kurzdarstellung der Ausgabe:

Nach curlpp installieren, habe ich versucht, C++ Code zu kompilieren, die die curlpp Bibliothek verwendet und bekam folgende Fehlermeldung:Fragen Kompilieren mit curlpp: undefined reference to Symbol 'curl_easy_setopt @@ CURL_OPENSSL_3'

g++ testCurl.cpp -lcurlpp 
/usr/bin/ld: /tmp/ccx5aH5P.o: undefined reference to symbol '[email protected]@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 

Irgendwelche Ideen, wie das zu beheben?

Mehr Detail:

Ich versuchte zuerst curlpp von der Quelle zu installieren, aber nach ./config ausgeführt wird, wurde mir mitgeteilt, dass ich Boost (es ist ein neuer Computer, damit ich nicht bereits installiert). Ich habe Boost installiert. Dann wurde ich informiert, dass ich "eine funktionierende Version von Curl" oder etwas ähnliches brauchte. Nach einer schnellen Suche im Internet stellte ich fest, dass ich eine Version von libcurl-dev installieren musste. Insbesondere habe ich das Paket installiert: libcurl4-openssl-dev 7.35.0-1ubuntu2.2 Danach curlpp kompiliert und ohne Problem installiert.

Schließlich nahm ich einige generische Test-Code und versuchte eine Kompilierung mit dem Befehl g ++ test.cpp -lcurlpp. Dies führte zu dem obigen Fehler. Ich habe versucht, die Locke und alles, was damit zusammenhängt, zu deinstallieren und neu zu installieren. Ich habe auch versucht, einige der alternativen libcurl-dev-Implementierungen zu installieren. Derselbe Fehler.

Ich habe im Internet nach Lösungen gesucht und verschiedene andere Dinge ausprobiert. Nichts hat bisher funktioniert.

Vielen Dank im Voraus für jede Hilfe !!

+0

Ich habe die Lösung gefunden, aber ich lasse dies, falls jemand anderes das gleiche Problem hat. Sie müssen kompilieren mit: g ++ file.cpp -lcurlpp -lcurl – user2548343

+0

Sie können Ihre eigene Frage beantworten - Sie sollten vermeiden, die Antwort in einen Kommentar zu setzen. –

Antwort

9

Ich fand die dumme Lösung. Ich lasse das oben für den Fall, dass jemand anderes das gleiche Problem hat. Sie müssen kompilieren mit: g ++ file.cpp -lcurlpp -lcurl

+0

Danke, ich hatte das gleiche Problem - mit der [curl-cpp] (https://github.com/JosephP91/curlcpp) -Bibliothek - und konnte mir nicht vorstellen, warum es fehlgeschlagen ist. Ich dachte, dass das Verbinden der Wrapperbibliothek libcurlcpp indirekt mit libcurl als seine Abhängigkeit verknüpfen würde, aber das ist nicht der Fall. –

Verwandte Themen