6

現在、システムにqt-windows-opensource-5.1.1-msvc2012-x86_64-offlineをインストールしました

すべて正常に動作しますが、Qt プロジェクトで libCurl を使用することに本当に成功することはできません。

このバージョンの libcurl をダウンロードしました: http://curl.haxx.se/download/libcurl-7.19.3-win32-ssl-msvc.zip

MSVC metalink   7.19.3  devel   SSL         Frederic Elbin  4.04 MB

インクルード フォルダーをアーカイブから VC インクルード フォルダーに移動し、#includeを使用してプログラムにインクルードし、正常に動作しました。

lib フォルダーには、Debug と Release という名前の別の 2 つのフォルダーがあり、どちらにもいくつかのファイルが含まれています。

私の .pro ファイルに追加しました:

win32: LIBS += -L$$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc/ -llibcurl_imp

INCLUDEPATH += $$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc
DEPENDPATH += $$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc/lib/release/ -lcurllib
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc/lib/debug/ -lcurllib

INCLUDEPATH += $$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc/lib/Debug
DEPENDPATH += $$PWD/../../../../../libcurl-7.19.3-win32-ssl-msvc/lib/Debug

そして今、簡単なプログラムを実行しようとすると、次のようになりました。

mainwindow.obj:-1: error: LNK2019: unresolved external symbol __imp_curl_easy_init referenced in function "private: void __cdecl MainWindow::on_pushButton_clicked(void)" (?on_pushButton_clicked@MainWindow@@AEAAXXZ)

ダウンロードしたアーカイブには、他のファイルもあります: http://img13.imageshack.us/img13/1416/reh8.png

おそらく、私は現在、libs (内部/外部または動的/静的) を適切に含めていますが、どれをどのように含めるかわかりません。また、どうすればいいのかわからない .dll ファイルもいくつかあります。

Qt プロジェクトで libcurl の使用に成功した人はいますか? 私は Qt の初心者で、難しいです…</p>

ありがとう。

4

2 に答える 2

2

QTでlibCurlをどのように使用しているかがわかります。誰かがこの質問に再び出くわした場合。でもmingw版を使っているので違うかもしれません。

.pro ファイル内:

INCLUDEPATH += C:\Users\pagep\QT\curl-7.31.0-devel-mingw32\include
LIBS += C:\Users\pagep\QT\curl-7.31.0-devel-mingw32\lib\libcurldll.a

そして、「デバッグ」フォルダー(プログラムが実行されるフォルダー)に、フォルダーcurl-7.31.0-devel-mingw32\binから .dll ファイルを追加しました

libcurl.dll
libeay32.dll
libidn-11.dll
librtmp.dll
libssh2.dll
ssleay32.dll
zlib1.dll

それはおそらく最善の解決策ではありませんが、私にとってはうまくいきます。:)

于 2014-01-11T00:28:10.393 に答える