![]() |
1
1
这是在助推器1.43的设计,但已被修复。见 this thread 有关详细信息。 |
![]() |
2
2
这听起来像是boost静态库和头文件之间的不匹配。你是如何安装Boost的?你在机器上运行bootstrap.bat来构建它了吗?编译后是否修改了boost头文件?在vs 2008全局设置中,是否有库目录引用指向包含不同版本的boost库的目录? 换句话说,您是否尝试过用bootstrap.bat编译的库进行全新的boost安装,并且删除了您机器上的所有其他boost实现?在你做到这一点之前,你是在建立一个不太稳固的基础。
如果在那之后仍然有麻烦,您尝试过调试-gt异常并打开第一次机会C++和Win32异常,这样您就可以在调试器中看到调用堆栈了吗?如果不起作用,您是否尝试过使用win32 API?
|
![]() |
3
2
我在G++-Boost版本1.47.0的4.6.1中遇到了类似的问题。
错误非常模糊,没有指向任何特定的代码部分。经过大量的努力,它被追溯到
解决办法是把所有
在与库链接时,boost应该更好地指向错误/警告。 |
![]() |
4
1
我建议您尝试创建一个新的、空的win32控制台应用程序(我通常选中“空项目”复选框,这样就不会得到预编译的头文件,对于小项目也是如此)。 添加一个 CPP 将文件提交给项目并将内容提供给它。 在项目属性中,在 C/C++ ,在 其他包含目录 框中,将路径添加到顶级boost文件夹(包含名为 促进 有所有的头文件)。在我的情况下,它是 Z:\dev\boost_1_43_0 ;根据你的帖子,你的可能是 I:\sophispal\boost-1_43_0-vc10-32 \include\boost-1_43 . 也在项目属性中,在 链接器-常规 ,在 其他库目录 框中,将路径添加到包含已编译的boost库的文件夹中。在我的电脑上,这是 Z:\dev\boost_1_43_0\lib库 ;根据你的帖子,你的可能是 I:\sophispal\boost-1_43_0-vc10-32\lib .
您不需要显式地告诉链接器您想链接哪些库;Boost标头使用VisualC++中的一个
只有这样,您才能够构建和运行调试和发布配置。我完全按照这些步骤进行,没有任何问题。 如果可以,我将开始修改项目,一次一个选项,直到它与您当前项目的配置相匹配。最终,一些事情会使它停止工作,然后你就会知道问题是什么。 如果 不 工作时,我会看看如何下载这个增强源并重新构建它。 |
![]() |
5
1
一些想法: 你怎么知道车祸发生了? 之后 (?) 如果从调试器运行并配置vs以捕获每个异常(不仅仅是未处理的异常),会发生什么? 你能贴出车祸的痕迹吗? |
![]() |
6
1
您应该使用类似 VLD (Windows)或Valgrind(Linux)检查它是否会指向错误的分配,可能您有一个Boost库版本,其中包含与当前编译器不兼容的bug,您可能需要应用修复程序。 |
![]() |
7
1
您要么有一个坏的构建或混乱的项目设置,因为您已经尝试创建一个新的基本项目,只是包括标题,我建议重新编译boost。您可以从sourceforge下载最新版本1.45,该版本链接到boost.org。当你在那里的时候,带上最新的BJAM。可以从Visual Studio命令提示符运行以下命令,以64位和32位构建Boost:
另一方面,如果CSF引用的是英特尔的通信服务框架开放源代码电话项目,那么我之前就做过这个项目,并且在升级Boost的时候,那个项目在一天中破坏的东西比它修复的要多……公平警告。 |
![]() |
zayd · 在C中Boost程序选项创建的矢量上迭代++ 1 年前 |
![]() |
Mimi · CMake使用了错误的boost include目录 1 年前 |
![]() |
zxctatar · 如何在一个类中运行两个异步定时器 1 年前 |
![]() |
Adrian · 如何确定boost::可选的(和其他)API? 1 年前 |
![]() |
TooTone · boost-pfr是如何获取结构的字段名称的? 1 年前 |