Can';t使用curl-undefined引用在Linux中编译 我试图用CURL LIB编译Linux(ubuntu)中的C++样本,但是我没有得到对“CurLayEasyInIt”< /P>的未定义的引用。
编译命令:Can';t使用curl-undefined引用在Linux中编译 我试图用CURL LIB编译Linux(ubuntu)中的C++样本,但是我没有得到对“CurLayEasyInIt”< /P>的未定义的引用。,c++,linux,curl,C++,Linux,Curl,编译命令: gcc -L/usr/local/lib -lcurl -I/usr/local/include -o request request.cpp 结果: /tmp/ccZwDiCf.o: In function 'main':<br> request.cpp:(.text+0xa): undefined reference to 'curl_easy_init'<br> request.cpp:(.text+0x31): undefined reference
gcc -L/usr/local/lib -lcurl -I/usr/local/include -o request request.cpp
结果:/tmp/ccZwDiCf.o: In function 'main':<br>
request.cpp:(.text+0xa): undefined reference to 'curl_easy_init'<br>
request.cpp:(.text+0x31): undefined reference to 'curl_easy_setopt'<br>
request.cpp:(.text+0x3d): undefined reference to 'curl_easy_perform'<br>
request.cpp:(.text+0x54): undefined reference to 'curl_easy_strerror'<br>
request.cpp:(.text+0x7b): undefined reference to 'curl_easy_cleanup'<br>
collect2: ld returned 1 exit status
/tmp/ccZwDiCf.o:在函数“main”中:
request.cpp:(.text+0xa):对“curl\u easy\u init”的未定义引用
request.cpp:(.text+0x31):对“curl\u easy\u setopt”的未定义引用
request.cpp:(.text+0x3d):对“curl\u easy\u perform”的未定义引用
request.cpp:(.text+0x54):对“curl\u easy\u strerror”的未定义引用
request.cpp:(.text+0x7b):对“curl\u easy\u cleanup”的未定义引用
collect2:ld返回了1个退出状态
代码:
#包括
#包括
int main(int argc,char*argv[]){
卷曲*卷曲;
卷曲编码;
curl=curl_easy_init();
if(curl){
curl\u easy\u setopt(curl,CURLOPT\u URL,“http://google.com");
res=旋度(curl)\u容易执行(curl);
如果(res!=卷曲(OK)
fprintf(stderr,“curl\u easy\u perform()失败:%s\n”,curl\u easy\u strerror(res));
旋度\轻松\清洁(旋度);
}
返回0;
}
只需回答即可结束此问题
要重新编译,必须将-lcurl选项放在编译命令行的末尾。将
-lcurl
放在编译器命令的末尾。还请注意,您不需要<代码> -L/Ur/Prase/LIB < /C>或<代码> -I/Ur/Prime/Is/<代码>,如果它将是C++代码,因为您建议使用G++,而不是GCCIF,您将链接CURL静态(CURL.A),在包含卷曲标题之前,您需要定义“代码> CURLYSTATICLIB < /代码>;不确定这是否是你的问题。谢谢大家。只需在命令末尾使用-l就可以了。
#include <curl/curl.h>
#include <stdio.h>
int main(int argc, char* argv[]){
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "http://google.com");
res = curl_easy_perform(curl);
if(res!=CURLE_OK)
fprintf(stderr, "curl_easy_perform() failed: %s\n",curl_easy_strerror(res));
curl_easy_cleanup(curl);
}
return 0;
}