-
Notifications
You must be signed in to change notification settings - Fork 680
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pistache work on mac? #1
Comments
Hello and thanks :) Unfortunately, it does not support osx for now as it's using the epoll() system call underneath for I/O notification. To make it work on osx, I would have to use kqueue instead of epoll. If you're interested in contributing, I could guide through the process of updating the code to support kqueue instead of epoll :) |
I am interested in working on this and contributing to the project. I have taken a look at the os.cc file and found where the epoll is used. Could you give more help or pointers on this? |
Hello, Sorry for the late response, I've been quite busy these last days. That being said, you could start creating an "interface" around the polling system (currently epoll). For example, such interface could support multiple operations:
Then, the polling system would have multiple implementations of this interface. We would then have:
The implementation would look something along those lines: namespace Polling {
// Interface
class Poller {
public:
virtual ~Poller() = default;
// ...
};
// Implementation
class Epoll : public Poller {
};
class Kqueue : public Poller {
};
class Select : public Poller {
}; Then, at runtime, depending on the OS and maybe a configuration parameter (we could start with an environment variable), it would automatically detect and choose either of these polling systems. Makes sense ? |
It seems that it's not as simple as just wrapping kqueue() for os.h/c, as http, transport and probably a few others use POSIX extensions. The transport layer is probably going to be the most intensive. |
@oktal what is |
Any updates on this front? @Marqin I noticed that the @oktal It looks like @Thomspoon is correct - the This is likely due to how the Thanks! |
has been there any updates to this issue? We would love to use this api, but really need osx and linux support. |
merge from oktal/pistache/master
Has the the shift to |
No. Contributions are welcome! |
…om-target-memcheck-test-valgrind Added test_memcheck (memory leak check) custom target to build targets
Any changes to this? Would like to try it on OS X. |
Not yet I'm afraid, if anything we've moved in the other direction so far. PRs are welcome. |
I ve the same issue, unfortunately |
Working on it... 😎 |
I would love to see macOS support too. |
Thanks a lot! Clone your branch and now I can install it on OSX! Switched to m1 macbook today, could not find any workaround for Linux as no virtual machines or docker are supported yet. |
Please do not use my develop branch. I just managed it to compile, but all the timer stuff etc. wasn't working at all due to lack of support from the community. |
Very nice project, but i was unable to install and use it on a mac (osx 10.11.x).
The text was updated successfully, but these errors were encountered: