2016-11-05 5 views
-2

안녕하세요 저는 C++ 초보자이고 http 요청에 대해 배우고 싶었습니다 ... PHP로 사용하기 전에 경험이 있기 때문에 저는 cURL을 선택했습니다. 이것은 내가 Codeblocks에 지금까지 한 일이다
의 Win64 x86_64에의 7zip과 7.51.0 이진 SSL SSH 빅토르 Szakáts 1.81 MBC++ Codeblocks + libcurl이 링크 오류로 끝납니다

에게 \ libs가 :

    나는 C로 컬을 웹 사이트에서이 버전을 다운로드 C : \ libs와 \ 컬-7.51.0-하는 Win64-와 Mingw \ 포함 \ 컬 글로벌 컴파일러 설정에서

  1. /검색 directori 글로벌에서

  2. 는 컴파일러 설정/검색 디렉토리/컴파일러는,이 경로를 추가 C : \ libs와 \ 컬-7.51.0-하는 Win64-와 Mingw \

  3. 글로벌 컴파일러 설정/링커 설정에서 LIB, 내가 추가이 경로 : C : \ libs와 \ ES/링커, 나는이 경로를 추가 컬-7.51.0-하는 Win64-와 Mingw \ lib 디렉토리 \ libcurl.a C : \ libs와 \ 컬-7.51.0-하는 Win64-와 Mingw \ lib 디렉토리 \ libcurldll.a

- 첨부 글로벌 컴파일러 설정/컴파일러 이 상자는 이전부터 다음과 같이 체크되어 있습니다 : g ++이 C++ 11 표준을 따르는가? (이게 중요 할 지 모르겠다 ...)

또한, 필자는 C : \ libs \ curl-7.51.0-win64-mingw의 내용을 C : \ Program Files (x86) \ CodeBlocks \ MinGW에 복사해야만했습니다.이 단계는 나에게 아무 의미가 없지만 온라인에서 찾았습니다.

#include <cstring> 
#include <string> 
#include <iostream> 
#include <stdio.h> 
#include <curl.h> 
#include <easy.h> 
using namespace std; 

int main(){ 

CURL* curl = curl_easy_init(); 
if(!curl){ 
     cout << "error" << endl; 
    }else{ 
    cout << "good job!" << endl; 
    curl_easy_cleanup(curl); 
    } 
}; 

나는이 오류가 무엇입니까 :/curl.h 컬 작동하지 않는 등이 포함, 어떤 이유로

undefined reference to `_imp__curl_easy_init' 
undefined reference to `_imp__curl_easy_cleanup' 
error: ld returned 1 exit status 
Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) 

을 나는 지금

는이 코드를 실행하고 ... 시도 , 작동하는 유일한 방법은 curl.h 포함, easy.h와 동일합니다.

감사합니다. 미리 감사드립니다.

+0

에 설명되어

내가 줄 수있는 최고의 조언은 리눅스를 사용하는 것입니다, 권유했다. curl은 모든 Linux 배포판의 표준 패키지이며 수동으로 설치할 필요가 없습니다. –

+0

이 시점에서 유닉스 시스템 만 사용해야합니다. –

+0

제목에 질문을 기술하십시오. –

답변

3

응용 프로그램을 빌드 할 때 CFLAGS-DCURL_STATICLIB이 추가되지 않고 정적 libcurl (Windows)에 연결되어 있습니다.

즉 말머리가 포함되기 전에 이어야합니다. CURL_STATICLIB으로 지정해야합니다. "조언"때문에 컬 자주 묻는 질문 항목 Link errors when building libcurl on Windows

+0

자신을 컬 사람! –

+0

고마워,하지만 이해가 안돼. 정확히 무엇을해야하는지 설명해 주시겠습니까? –