2011-08-06 48 views
0

我正在使用mingw。我從Windows的http://curl.haxx.se/download.html鏈接下載了OpenSSl和zlib。在所有makefile32.m32中將路徑更改爲openSSl和Zlib。嘗試建立與的mingw32-做出的mingw32-SSL-zlib的但是,當我的錯誤,我不明白爲什麼:(無法使用OpenSSL構建libcUrl

Erorrs是

c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lssl32 
collect2: ld returned 1 exit status 
mingw32-make[1]: *** [libcurl.dll] Error 1 
mingw32-make[1]: Leaving directory `c:/curl/lib' 
mingw32-make: *** [mingw32-ssl] Error 2 

我改變的Makefile多一點。添加寫但是我有兩個lib:libeay32.a和ssleay32.a,並且makefile中的選項是curl_LDADD + = -L(OPENSSL_PATH)\ lib \ MinGW -leay32 -lssl32。當我更改-lssl32到-lssleay32,同樣的錯誤是 - 找不到-lssleay32

回答

1

OpenSSL不一致使用庫命名,取決於庫的編譯方式。它也咬我一次。請確保您有makefile文件預計文件

libeay.a 
libssl.a 
libz.a 

或名稱。 lib前綴在這裏非常重要,否則您的鏈接器將無法找到它。

+0

哦,那裏沒有lib-prefix在一個文件中!它建成了。但現在當我嘗試運行程序時,我遇到了很多錯誤,比如.. \ lib \ /libcurl.a(ssluse.o):(.text + 0x121):undefined對 – Alecs

+0

@Alecs的引用:你很可能這意味着如果你鏈接你的libcurl,你還需要鏈接它所依賴的所有庫(在這個例子中是OpenSSL庫)。 – rubenvb

+0

我在這裏描述錯誤,你可以看一下嗎? http://stackoverflow.com/questions/6967729/how-to-use-curl-and-openssl – Alecs