2.2 KiB
Some notes for the windows jungle
This was how I compiled libwebsockets in windows March 2020.
OpenSSL
Installing prebuilt libs
I used the 1.1.1d (the latest) libs from here, as recommended on the OpenSSL site
I had to use procmon64 (windows' strace) to establish that these libraries are looking for a cert bundle at "C:\Program Files\Common Files\SSL\cert.pem"... it's not included in the zip file from the above, so...
Installing a cert bundle
You can get a trusted cert bundle from here
Save it into C:\Program Files\Common Files\SSL\cert.pem
where openssl will be able to see it.
Installing cmake
CMake have a windows installer thing downloadable from here
after that you can use cmake
from the terminal OK.
Installing git
Visit the canonical git site to download their windows installer thing
after that git
from the terminal is working.
Install the free "community" visual studio
You can do this through "windows store" by searching for "visual studio"
I installed as little as possible, we just want the C "C++" tools.
It still wouldn't link without the "mt" helper tool from the huge windows SDK, so you have to install GB of that as well.
Building
Somehow windows cmake seems slightly broken, some of the plugins and
examples are conditional on if (NOT WIN32)
, but it configures them
anyway. For this reason (it seems "only", it worked when I commented the
cmake entries for the related plugins) -DLWS_WITH_MINIMAL_EXAMPLES=1
Instead I followed how appveyor builds the stuff in CI... clone libwebsockets then
> git clone https://libwebsockets.org/repo/libwebsockets
> cd libwebsockets
> mkdir build
> cd build
> cmake ..
> cmake --build . --config DEBUG
Installing requires admin privs, I opened a second cmd window as admin and did it there.
> cmake --install . --config DEBUG
After that you can run the test apps OK.