Reputation: 723
Goal:
To correctly install and use libcurl C++
on CentOS 7
.
Current output:
When I go to compile a program using libcurl
with the command g++ somefile.cpp -lcurl -std=c++11 -o somefile
, the following error is received:
[user@localhost ~]$ somefile.cpp -lcurl -std=c++11 -o somefile
somefile.cpp:10:23: fatal error: curl/curl.h: No such file or directory
#include <curl/curl.h>
^
compilation terminated.
Details:
libcurl
was installed via sudo yum install libcurl
(and also an attempt with sudo yum install libcurl4-openssl-dev
). From previous experiences with installing libcurl
on Ubuntu 20.04.1 LTS
, if I remember correctly I solved a similar issue by setting the LD_LIBRARY_PATH
to point to a libcurl.so object
as seen below, but this seems to have no effect on CentOS 7
.
[user@localhost ~]$ export LD_LIBRARY_PATH=/usr/local/lib/libcurl.so.4
[user@localhost ~]$ sudo ldconfig
If I run the following command I can see the libcurl
version which leads me to believe it has been correctly installed:
[user@localhost ~]$ curl --version
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.53.1 zlib/1.2.7 libidn/1.28 libssh2/1.8.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets
Please note: the following resources have been consulted before deciding to ask this question:
Summary question:
q1. How can this error be solved when trying to compile a C++
program using libcurl
on CentOS 7
?
Upvotes: 4
Views: 9723
Reputation: 802
You will need to install the libcurl-devel package as it contains the headers files you are missing.
The libcurl-devel package includes header files and libraries necessary for developing programs which use the libcurl library. It contains the API documentation of the library, too
Upvotes: 5