首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >错误:‘io_context’不是‘boost::asio’的成员,而error:‘steady_timer’不是‘boost::asio’的成员

错误:‘io_context’不是‘boost::asio’的成员,而error:‘steady_timer’不是‘boost::asio’的成员
EN

Stack Overflow用户
提问于 2020-06-23 19:25:11
回答 1查看 1.7K关注 0票数 1

我被我的第一个asio代码卡住了。我从官方网站(asio/教程/tuttimer1.html)上读过教程的第一部分。

这是代码

代码语言:javascript
运行
复制
#include <iostream>
#include <boost/asio.hpp>

    int main()
    {
        boost::asio::io_context io;
        boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));
        t.wait();
        std::cout << "First app with asio!" << std::endl;
    
        return 0;
    }

这里有一些错误

代码语言:javascript
运行
复制
egor@PC:~/Documents/Programming/boost_asio_practice$ g++ trial.cpp
trial.cpp: In function ‘int main()’:
trial.cpp:6:15: error: ‘io_context’ is not a member of ‘boost::asio’
  boost::asio::io_context io;
               ^~~~~~~~~~
trial.cpp:6:15: note: suggested alternative: ‘connect’
  boost::asio::io_context io;
               ^~~~~~~~~~
               connect
trial.cpp:7:15: error: ‘steady_timer’ is not a member of ‘boost::asio’
  boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));
               ^~~~~~~~~~~~
trial.cpp:7:15: note: suggested alternative: ‘deadline_timer’
  boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));
               ^~~~~~~~~~~~
               deadline_timer
trial.cpp:8:2: error: ‘t’ was not declared in this scope
  t.wait();
  ^
trial.cpp:8:2: note: suggested alternative: ‘tm’
  t.wait();
  ^
  tm

UPD:我已经安装了最新版本的boost。现在我收到了这些错误,我该怎么办?

代码语言:javascript
运行
复制
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_event::posix_event()':
trial.cpp:(.text._ZN5boost4asio6detail11posix_eventC2Ev[_ZN5boost4asio6detail11posix_eventC5Ev]+0x4d): undefined reference to `pthread_condattr_setclock'
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_thread::~posix_thread()':
trial.cpp:(.text._ZN5boost4asio6detail12posix_threadD2Ev[_ZN5boost4asio6detail12posix_threadD5Ev]+0x26): undefined reference to `pthread_detach'
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_thread::join()':
trial.cpp:(.text._ZN5boost4asio6detail12posix_thread4joinEv[_ZN5boost4asio6detail12posix_thread4joinEv]+0x2b): undefined reference to `pthread_join'
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_thread::start_thread(boost::asio::detail::posix_thread::func_base*)':
trial.cpp:(.text._ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE[_ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE]+0x3a): undefined reference to `pthread_create'
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_signal_blocker::posix_signal_blocker()':
trial.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerC2Ev[_ZN5boost4asio6detail20posix_signal_blockerC5Ev]+0x64): undefined reference to `pthread_sigmask'
/tmp/ccArqi4D.o: In function `boost::asio::detail::posix_signal_blocker::~posix_signal_blocker()':
trial.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerD2Ev[_ZN5boost4asio6detail20posix_signal_blockerD5Ev]+0x2d): undefined reference to `pthread_sigmask'
collect2: error: ld returned 1 exit status
EN

Stack Overflow用户

发布于 2020-06-23 20:26:05

你可能在使用更老版本的boost。历史要大得多:从1.66到1.66的文档已经声明:

service.html

时光机

下面是1.65.1的在Wandbox上直播

代码语言:javascript
运行
复制
#include <boost/asio.hpp>
#include <iostream>

int main() {
    boost::asio::io_service io;
    boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
    t.wait();
    std::cout << "First app with asio!" << std::endl;
}

打印

代码语言:javascript
运行
复制
First app with asio!

回到未来

同样,使用1.73.1的在Wandbox上直播

代码语言:javascript
运行
复制
#include <boost/asio.hpp>
#include <iostream>

int main() {
    boost::asio::io_context io;
    boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));
    t.wait();
    std::cout << "First app with asio!" << std::endl;
}

打印

代码语言:javascript
运行
复制
First app with asio!

2017年12月18日

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62542319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档