Skip to content
This repository has been archived by the owner on Jun 12, 2018. It is now read-only.

Level of Windows support #189

Closed
cryptocode opened this issue Jan 3, 2018 · 5 comments
Closed

Level of Windows support #189

cryptocode opened this issue Jan 3, 2018 · 5 comments

Comments

@cryptocode
Copy link

My understanding is that tests don't pass/run on Windows due to a lacking -fno-access-control equivalent. Other than that, is Simple-Web-Server known to be stable on Windows (as well as Linus and macOS)?

@eidheim
Copy link
Owner

eidheim commented Jan 3, 2018

The first step to test how stable the library is on Windows would be to run the tests. Even without -fno-access-control, one should be able to compile the tests after some manual changes in the header files, for instance changing all private: and protected: to public:, and add public: where needed.

From previous feedback, I would expect that not all the tests will succeed, but maybe this is something we can improve. There might be issues on Windows that might be difficult to workaround thought, for instance #26

@SethHamilton
Copy link
Contributor

I compile with Visual C++ and GCC. I use very recent versions of both. I've had no luck compiling it with boost (which I do not use), but I have managed to get the non-boost ASIO library to work nicely and with little effort on both platforms. I am compiling these projects directly into my application. I have found Simple-Web-Server to be reliable and I've pushed a lot of data through it.

@Type1J
Copy link

Type1J commented Jan 3, 2018

I'd really like a vcpkg package for Windows. ... After thinking about it, that's really a separate issue from this ticket, so I filed it here: #190
The reason that I thought of it is that a patch could be applied to remove the access control problem, but I'm not sure if the tests even run when vcpkg builds. I'm using an older (possibly patched, and forgotten) version of Simple-Web-Server on Windows.

@zethon
Copy link
Contributor

zethon commented Jan 13, 2018

@SethHamilton

I've had no luck compiling it with boost (which I do not use), but I have managed to get the non-boost ASIO library to work nicely

Can you please explain what you used and how you did this? I would really like to use this library as it works great on Mac and Linux, but for the life of me I cannot get it things to work on Windows (see #188).

@SethHamilton
Copy link
Contributor

@zethon The only way I got it to work was by using the standalone (non-boost) version of ASIO. I don't use boost in my project (C++11-17 have most of what I would have used). I also use CMAKE as my project is designed to build on windows and linux. Here is a link:

https://github.com/opset/openset

You can use the compiler flags -DASIO_STANDALONE -DUSE_STANDALONE_ASIO to make ASIO compile standalone.... as far as Simple-Web-Server, it's been 100% the same to develop on Windows as Linux (outside of the ASIO fussiness).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants