You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
2.2 KiB
76 lines
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
|
|
|
|
[overbyte.eu](https:..wiki.overbyte.eu/wiki/index.php/ICS_Download#Download_OpenSSL_Binaries_.28required_for_SSL-enabled_components.29)
|
|
|
|
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
|
|
|
|
[drwetter/testssl cert bundle](https://raw.githubusercontent.com/drwetter/testssl.sh/3.1dev/etc/Microsoft.pem)
|
|
|
|
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
|
|
|
|
[cmake](https://cmake.org/download/)
|
|
|
|
after that you can use `cmake` from the terminal OK.
|
|
|
|
### Installing git
|
|
|
|
Visit the canonical git site to download their windows installer thing
|
|
|
|
[git](https://git-scm.com/download/win)
|
|
|
|
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.
|