2014-11-10 8 views
6

Brief tytułu emisji:

Po zainstalowaniu curlpp próbowałem kompilacji kodu C++, który wykorzystuje bibliotekę curlpp i uzyskałem następujący błąd:Kompilacja problemów z curlpp: niezdefiniowane odniesienia do symbolu „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 

Wszelkie pomysły, jak to naprawić?

Więcej szczegółów:

raz pierwszy próbował zainstalować curlpp od źródła, ale po uruchomieniu ./Config, poinformowano mnie, że muszę impuls (jest to nowy komputer, więc nie mają już zainstalowany). Zainstalowałem boost. Następnie poinformowano mnie, że potrzebuję "działającej wersji curl" lub czegoś podobnego. Po szybkim wyszukiwaniu internetowym stwierdziłem, że muszę zainstalować jakąś wersję libcurl-dev. W szczególności zainstalowałem pakiet: libcurl4-openssl-dev 7.35.0-1ubuntu2.2 Po tym, curlpp skompilowany i zainstalowany bez problemu.

W końcu wziąłem ogólny kod testowy i próbowałem skompilować polecenie za pomocą polecenia g ++ test.cpp -lcurlpp. Doprowadziło to do powyższego błędu. Próbowałem odinstalować curl i wszystko, co związane i ponownie zainstalować. Próbowałem także zainstalować niektóre z alternatywnych implementacji libcurl-dev. Ten sam błąd.

Szukałem rozwiązań w sieci i próbowałem kilku innych rzeczy. Nic nie zadziałało tak daleko.

Z góry dziękuję za pomoc!

+0

Znalazłem poprawkę, ale zostawię to na wypadek, gdyby ktoś inny miał ten sam problem. Musisz skompilować z: g ++ file.cpp -lcurlpp -lcurl – user2548343

+0

Możesz odpowiedzieć na własne pytanie - powinieneś unikać umieszczania odpowiedzi w komentarzu. –

Odpowiedz

9

Znalazłem głupi. Zostawię to na wypadek, gdyby ktoś inny miał ten sam problem. Musisz skompilować z: g ++ file.cpp -lcurlpp -lcurl

+0

Dzięki, miałem ten sam problem - z biblioteką [curl-cpp] (https://github.com/JosephP91/curlcpp) - i nie mogłem pomyśleć, dlaczego to się nie udało. Pomyślałem, że połączenie biblioteki otoki libcurlcpp pośrednio spowoduje połączenie z libcurl jako zależnością, ale tak nie jest. –

Powiązane problemy