a cpprestsdk port to mingw32
- the origin cpprestsdk.zip is licensed by Microsoft Corporation.
- replace cpprestsdk/Release with this git.
- modify your winnt.h of mingw platform, make C_ASSERT work correctly.
#if defined(_WIN32) || defined(__mingw32__)
- if any template typename U in boost headers confilt with macro U in cpprest, change the typename U in boost headers.
replace U with UU
- change the
Release\src\CMakeFiles\cpprest.dir\linklibs.rsp
, add the path of msvcrt_locale.dll
- define Z_PORT_MINGW
- define CPPREST_FORCE_HTTP_LISTENER_ASIO
- define CPPREST_FORCE_HTTP_CLIENT_ASIO
- define _UNICODE
- boost, should be compiled by a g++ that has the same major version as yours has.
- openssl
- zlib
- websocketpp, which you can extract the project to cpprestsdk/Release/libs/websocketpp.
- msvcrNN.dll, you should write manifest files to tell winsxs solve dlls, and rename for your binaries.
- boost.1.54 -- mingw4.9x
- boost.1.66 -- mingw7x
- boost.1.69 -- mingw8x or mingw9x
- boost.1.60 -- mingw6x
ver | vendor | default | other choice | |
---|---|---|---|---|
1. | 4 | tdm | dw2 | |
2. | 5 | w64 | sjlj | dw2 |
3. | 6 | w64 | sjlj | dw2 |
4. | 7 | w64 | sjlj | dw2 |
5. | 8 | w64 | sjlj | dw2 |
6. | 9 | tdm | dw2 | |
7. | 10 | tdm | dw2 |