Я учусь создавать PHP-расширения, и я наткнулся на сообщение в блоге о swig. Я попытался создать код с libcurl, но я не могу его скомпилировать.swig и libcurl вместе
%{
#include <stdio.h>
#include <curl/curl.h>
bool wsper(char* url, char* postdata){
CURL* curl = curl_easy_init();
CURLcode res;
if(curl){
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postdata);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, false);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, false);
res = curl_easy_perform(curl);
if(res == CURLE_OK){
curl_easy_cleanup(curl);
return true;
}else{
return false;
}
}else{
return false;
}
}
%}
%module wsper
extern bool wsper(char* url, char* postdata);
После выполнения следующих команд я не обнаружил никаких ошибок
swig -php file.c
g++ `php-config --includes` -fpic -lcurl -lcurlpp -c
wsper_wrap.c g++ -shared file_wrap.o -o file.so
, но когда я пытаюсь запустить файл PHP, у меня есть сообщение об ошибке сказав:
неопределенными символ : curl_easy_perform в Unknown line 0