簡體   English   中英

在QT中鏈接libCurl會給出一大堆錯誤C ++

[英]Linking libCurl in QT gives a huge list of errors C++

我試圖將QT中的libCurl鏈接到Windows 7 x64上的C ++程序,但是當我嘗試鏈接libcurldll.a ,我得到了一個巨大的錯誤列表。 我已經嘗試用GCC g++ -LC:\\MinGW\\lib -lcurldll編譯一個類似的函數g++ -LC:\\MinGW\\lib -lcurldll編譯沒有錯誤。 我在QT和GCC中使用以下代碼。

void MainWindow::on_pushButton_2_clicked()
{
    CURL *curl;
    curl = curl_easy_init();
    curl_easy_setopt(curl, CURLOPT_URL, "http://google.com");
    curl_easy_perform(curl);
    curl_easy_cleanup(curl);
}

QT給了我一大堆我在這里粘貼的錯誤。 一些關鍵錯誤是tlsthrd.c:-1: error: undefined reference to 'EnterCriticalSection@4'我在.pro文件中使用LIBS += -LC:\\MinGW\\lib -lcurldll將項目鏈接到curl圖書館。 知道為什么會這樣嗎? 干杯。

編輯:經過深入研究后,看起來好像libmingw32.a存在一些問題,這些問題提供了對用於多線程的函數的引用。 我應該嘗試替換庫文件嗎? 如果是這樣,為什么GCC使用相同的庫文件正確編譯但QT不正確?

.pro文件中添加win32:LIBS += c:\\MinGW\\lib\\libcurldll.a可以了。

Blarp。 不要使用lib curl,Qt已經有QNetworkAccessManager ,它使用線程安全的Qt信號優雅地處理請求和響應。 你需要的一切都已存在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM