【发布时间】:2013-09-26 19:53:01
【问题描述】:
我正在使用 Eclipse Indigo 在 Ubuntu 12.04 LTS 上使用 OpenCV 2.4.6.1 版本开发图像处理应用程序。我使用 Intel ICC 编译器版本 14。
我需要使用 Boost 中分布的线程库。这样我就成功地用 Intel 编译器编译了 Boost 1.54。
为了使用以下代码进行编译,将 -lboost_thread 开关添加到链接器的标志列表中:
boost::this_thread::sleep_for(oneFrameProcessDuration -(boost::chrono::high_resolution_clock::now() - startTime));
整个应用程序编译成功后。当我开始申请时,
boost::exception_ptr boost::exception_detail::get_static_exception_object<boost::exception_detail::bad_alloc_>()
抛出异常。即使我无法到达我的主要功能的第一行。
可能是什么问题?
问候。
【问题讨论】:
-
您确定要链接到正确的 boost 库(实现您的标头的库)吗?在调试器中运行时会得到什么?
-
@boric 我在发布这个帖子之前检查了那个帖子。
-
@walter 我敢肯定,我链接到正确的 boost 库。我认为头文件和库之间没有不一致,因为我链接到 boost_system 库没有任何问题。调试器说程序收到 SIGSEG 分段错误信号,并在原始帖子上抛出异常。
-
尝试删除代码行直到错误消失,从而创建一个最小的错误版本。
标签: c++ boost eclipse-cdt