0

私は数時間検索しており、同じ問題を抱えたスレッドをいくつか見つけて、すべての提案を試しました.

私の curl.h は C:\MinGW\msys\1.0\curl-7.29.0\include\curl にあり、コンパイル時に含めましたが、何らかの理由で gcc が見つからないと主張しています:

gcc -o curl.exe curl.c -IC:/MinGW/msys/1.0/local/ -IC:/MinGW/msys/1.0/curl-7.29.0/lib/.libs/ -IC:/MinGW/msys/1.0/curl-7.29.0/include/curl -IC:/MinGW/msys/1.0/OpenSSL-Win32/ -lcurl -lws2_32

そして結果:

curl.c:4:32: fatal error: curl/curl.h: No such file or directory

更新: (H2CO3 からの提案により)

$ gcc -o curl.exe curl.c -IC:/MinGW/msys/1.0/local -IC:/MinGW/msys/1.0/curl-7.29.0/lib/.libs/ -IC:/MinGW/msys/1.0/curl-7.29.0/include/ -IC:/MinGW/msys/1.0/OpenSSL-Win32/include/ -lws2_32

C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0xa8): undefined reference to `_imp__curl_global_init'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0xe6): undefined reference to `_imp__curl_formadd'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x124): undefined reference to `_imp__curl_formadd'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x162): undefined reference to `_imp__curl_formadd'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x169): undefined reference to `_imp__curl_easy_init'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x183): undefined reference to `_imp__curl_slist_append'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x1b8): undefined reference to `_imp__curl_easy_setopt'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x211): undefined reference to `_imp__curl_easy_setopt'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x237): undefined reference to `_imp__curl_easy_setopt'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x245): undefined reference to `_imp__curl_easy_perform'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x25e): undefined reference to `_imp__curl_easy_strerror'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x288): undefined reference to `_imp__curl_easy_cleanup'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x296): undefined reference to `_imp__curl_formfree'
C:\DOCUME~1\J10441\LOCALS~1\Temp\ccHP6WWt.o:curl.c:(.text+0x2a4): undefined reference to `_imp__curl_slist_free_all'

collect2: ld が 1 つの終了ステータスを返しました

-lcurl でコンパイルしようとすると、次のように表示されます。 ld.exe: -lcurl が見つかりません dll が見つからないためですか?

4

2 に答える 2

2

を含めていますが<curl/curl.h>、ではありません <curl.h>includeしたがって、ヘッダー ファイルをディレクトリではなくディレクトリで探すようにコンパイラに指示する必要がありますinclude/curl

gcc -IC:\MinGW\msys\1.0\curl-7.29.0\include etc. etc.
于 2013-03-27T21:21:31.220 に答える
1

これはあなたがやっていることの範囲を超えているかもしれませんが、MinGW/MSYS 環境に cURL(libcurl) のバージョンをインストールするのが最善であることがわかりました。インストール後、GCC が期待する場所にインストールされるため、任意のプログラムをコンパイルして、典型的な <curl/curl.h> および -lcurl 規則で使用できます。私は自分のプロセスをここに文書化しました。

于 2015-02-16T00:43:37.580 に答える