-
Notifications
You must be signed in to change notification settings - Fork 20
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
Windows support #53
Comments
This is interesting since that I think comment was written before libmultiprocess existed as a separate library. I think basically the comment is still applicable and can be used to implement windows versions of Function signatures in #ifdef WIN32
using SocketId = HANDLE;
using ProcessId = HANDLE;
#else
using SocketId = int;
using ProcessId = int;
#endif
using FdToArgsFn = std::function<std::vector<std::string>(SocketId fd)>;
int SpawnProcess(ProcessId& pid, FdToArgsFn&& fd_to_args);
int WaitProcess(ProcessId pid); |
Another part of this is that signatures of template <typename InitInterface>
std::unique_ptr<ProxyClient<InitInterface>> ConnectStream(EventLoop& loop, SocketId socket);
template <typename InitInterface, typename InitImpl>
void ServeStream(EventLoop& loop, SocketId socket, InitImpl& init); I think this should only require replacing the |
Also finally some libmultiprocess/src/mp/proxy.cpp Lines 132 to 135 in 805eb73
libmultiprocess/src/mp/proxy.cpp Line 183 in 805eb73
libmultiprocess/src/mp/proxy.cpp Lines 196 to 197 in 805eb73
libmultiprocess/src/mp/proxy.cpp Lines 211 to 212 in 805eb73
I think there are straightforward replacements for all of these. Replace EDIT: Should only need to replace |
I'm having some issues trying to build on windows. I downloaded and built capnproto-c++-0.8.0 with msvc2017. Then I set
Looks like it's using |
Hmm, that custom build rule comes from this line in CMakeLists: libmultiprocess/CMakeLists.txt Line 45 in 805eb73
It's possible prefixing In longer run, I assume the best way to get these various packages working together on windows will be with vcpkg, but I don't have any experience using vcpkg yet. I'm expecting there are more build issues waiting after this one. My previous comments above were about porting library code, and I think porting build code should be simpler and require fewer changes than porting library code, but the problems are probably less predictable and may take more time to debug. |
Same here, not used to code on windows, I'll try your suggestion just to have it build so I can work on the actual code change. |
Issue is related to |
I think this should be referenced here:
From https://github.com/bitcoin/bitcoin/blob/master/doc/multiprocess.md
Is there anything else worth mentioning? I could give it a try.
The text was updated successfully, but these errors were encountered: