Skip to content
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Author: Jörn Hartroth


(If you're only looking for precompiled win32 binaries, go visit

Packaging of the curl binaries for Win32 should at this point in time be based
on the InfoZip (zip/unzip) archiver family as the de-facto standard for
Windows archives. A package should contain the main binary curl.exe along with
the appropriate documentation and license information files. For development
releases, you should also include the header directory and probably the
compiled binaries of libcurl and the appropriate Makefiles/project definition
files for the compiler used.

A simple packaging mechanism can be based on a set of batch files which call
zip.exe with the appropriate files from the curl distribution - see the
samples included below (Long lines have been split with "\" as the split
marker, you'll want to rejoin the pieces to be all on one line in the batch
file). Call any of these batch files - after compiling the curl binaries -
with a single parameter specifying the name of the archive file to be created.

It is implicitely assumed that all of the binary files (curl.exe, libcurl.a,
etc) have previously been copied to the main directory of the curl source
package (the directory where the main README resides), because that is where
they should end up in the zip archive. The archive should *not* be built with
absolute path information because the user will want to locally extract the
archive contents and shift the binaries to his executable directory.


	zip -9 %1 curl.exe CHANGES LEGAL MPL-1.0.txt README \
	 docs/FAQ docs/FEATURES docs/README.curl docs/README.win32 docs/TODO

	zip -9 %1 curl.exe include\README include\curl\*.h CHANGES docs\* \
	  curl.spec curl-ssl.spec LEGAL lib/Makefile.m32 src/Makefile.m32 \
	  libcurl.a libcurl.dll libcurldll.a MPL-1.0.txt README


A standard packaging routine (for MingW32) using the above batch files could
go like this:
(No SSL)					(With SSL)
cd <curl-sourcedir>\lib			cd <curl-sourcedir>\lib
make -f Makefile.m32			make -f Makefile.m32 SSL=1
cd ..\src					cd ..\src
make -f Makefile.m32			make -f Makefile.m32 SSL=1
cd ..						cd ..
copy lib\libcurl.a .			copy lib\libcurl.a .
copy src\curl.exe .			copy src\curl.exe .
curlpkg		curlpkg
Something went wrong with that request. Please try again.