libcurl C++:如何在CentOS 7上正确安装和使用
libcurl C++: How to correctly install and use on CentOS 7
目标:
在 CentOS 7
上正确安装和使用 libcurl C++
。
当前输出:
当我用命令g++ somefile.cpp -lcurl -std=c++11 -o somefile
编译使用libcurl
的程序时,收到以下错误:
[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.
详情:
libcurl
是通过 sudo yum install libcurl
安装的(也尝试使用 sudo yum install libcurl4-openssl-dev
)。根据之前在 Ubuntu 20.04.1 LTS
上安装 libcurl
的经验,如果我没记错的话,我通过将 LD_LIBRARY_PATH
设置为指向 libcurl.so object
解决了类似的问题,如下所示,但这似乎对 CentOS 7
.
没有影响
[user@localhost ~]$ export LD_LIBRARY_PATH=/usr/local/lib/libcurl.so.4
[user@localhost ~]$ sudo ldconfig
如果我 运行 以下命令我可以看到 libcurl
版本,这让我相信它已正确安装:
[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
请注意:在决定提出此问题之前已参考以下资源:
- https://lynxbee.com/how-to-resolve-fatal-error-curl-curl-h-no-such-file-or-directory-for-ubuntu-linux/
- Ubuntu - #include <curl/curl.h> no such file or directory
- curl.h no such file or directory
- How do I link libcurl to my c++ program in linux?
总结题:
q1。尝试在 CentOS 7
上使用 libcurl
编译 C++
程序时如何解决此错误?
您需要安装 libcurl-devel 包,因为它包含您缺少的头文件。
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
目标:
在 CentOS 7
上正确安装和使用 libcurl C++
。
当前输出:
当我用命令g++ somefile.cpp -lcurl -std=c++11 -o somefile
编译使用libcurl
的程序时,收到以下错误:
[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.
详情:
libcurl
是通过 sudo yum install libcurl
安装的(也尝试使用 sudo yum install libcurl4-openssl-dev
)。根据之前在 Ubuntu 20.04.1 LTS
上安装 libcurl
的经验,如果我没记错的话,我通过将 LD_LIBRARY_PATH
设置为指向 libcurl.so object
解决了类似的问题,如下所示,但这似乎对 CentOS 7
.
[user@localhost ~]$ export LD_LIBRARY_PATH=/usr/local/lib/libcurl.so.4
[user@localhost ~]$ sudo ldconfig
如果我 运行 以下命令我可以看到 libcurl
版本,这让我相信它已正确安装:
[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
请注意:在决定提出此问题之前已参考以下资源:
- https://lynxbee.com/how-to-resolve-fatal-error-curl-curl-h-no-such-file-or-directory-for-ubuntu-linux/
- Ubuntu - #include <curl/curl.h> no such file or directory
- curl.h no such file or directory
- How do I link libcurl to my c++ program in linux?
总结题:
q1。尝试在 CentOS 7
上使用 libcurl
编译 C++
程序时如何解决此错误?
您需要安装 libcurl-devel 包,因为它包含您缺少的头文件。
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