-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Can't compile anything with latest version of standalone asio #794
Comments
websocketpp relies on deprecated features of asio which have been removed in the latest commits: chriskohlhoff/asio@9801132 1.12.2 would be the last version supported by websocketpp as it currently is. |
hmm, lovely. I'll be looking into this. |
At least some of these errors are due to this line: where websocketpp is passing a constructor argument through (N.B. this is a problem because what in asio was previously a non-template constructor that took |
All I/O objects now have an additional Executor template parameter. This template parameter defaults to the asio::executor type (the polymorphic executor wrapper) but can be used to specify a user-defined executor type. I/O objects' constructors and functions that previously took an asio::io_context& now accept either an Executor or a reference to a concrete ExecutionContext (such as asio::io_context or asio::thread_pool). One potential point of breakage in existing user code is when reusing an I/O object's io_context for constructing another I/O object, as in: asio::steady_timer my_timer(my_socket.get_executor().context()); To fix this, either construct the second I/O object using the first I/O object's executor: asio::steady_timer my_timer(my_socket.get_executor()); or otherwise explicitly pass the io_context: asio::steady_timer my_timer(my_io_context);
I'm still having this issue; any progress? |
as @chriskohlhoff suggested removing the wrapper I have a fork here that just does that, but I'm not confident/expert on websocketpp to ask a pull request as I think there's more to it, and I couldn't have tested on many configs/systems. Anyway this is the fork: https://github.com/ziocleto/websocketpp Also @stefan-floeren I do not understand your PR as you've just replaced |
The @ziocleto I replaced assignments and |
@stefan-floeren ah I see, so you've used |
Do you mean I should dowload boost with version 1.12.0? And I don't find boost package in 1.12, now there are only 1.20.0 version the most olds , |
No, 1.12.2 is the Asio version. The last working Boost is 1.69. |
Just FYI, airdcpp-webclient builds fine when using "develop" branch of websocketpp (with boost 1.71). It fails when using the last released version. |
yes, seems like using develop branch fixes the issue |
This seems to have fixed errors with ASIO: zaphoyd/websocketpp#794
In case this is useful for anyone else who just needs to get a working build going:
|
Fix taken from this comment on github: zaphoyd/websocketpp#794 (comment)
The fix was taken from the comment here: zaphoyd#794 (comment)
The fix for this issue has been available on the |
Fix taken from this comment on github: zaphoyd/websocketpp#794 (comment)
Fix taken from this comment on github: zaphoyd/websocketpp#794 (comment)
Using an older version of websocket++ (<0.8.2) leads to errors with newer versions of Boost.Asio, s. zaphoyd/websocketpp#794
I'm compiling with gcc 7.3.0 on Ubuntu 18.04
I'm using the latest master branch of websocketpp
and standalone asio from here https://github.com/chriskohlhoff/asio/tree/84e9a48ae6ff040311dfdd9bd4b8e761832509fd
I'm not sure if you can fix this or it's an issue with asio but I want to let you know about this.
Here's my code:
example0.cpp
CMakeList.txt
Here's the Errors:
The text was updated successfully, but these errors were encountered: