SCIP Optimization Suite编译queens项目时出现向量下标越界错误求助
SCIP queens项目编译向量越界问题排查及Boost库说明
核心结论
SCIP Optimization Suite 8.0.3不需要手动在Visual Studio中添加全局Boost库——SCIP已经内置了自身依赖的Boost轻量组件,无需额外配置系统级Boost。
向量下标越界的可能原因及解决步骤
CMake配置关联问题
检查CMake生成VS项目时,queens目标是否正确关联了SCIP核心库:- 右键queens项目→属性→
C/C++→常规,确认附加包含目录包含SCIP源码的include文件夹; - 转到
链接器→输入,确认附加依赖项包含SCIP编译生成的scip.lib、soplex.lib等核心库文件。
- 右键queens项目→属性→
项目工作目录/文件路径问题
queens作为SCIP示例项目,可能因工作目录未正确设置,导致读取问题实例文件失败引发越界:
右键queens项目→属性→调试→工作目录,设置为SCIP源码中examples/queens的实际路径,确保程序能找到所需输入文件。SCIP源码编译不完整
虽然CMake编译显示成功,但可能存在模块编译警告或未完成的情况:- 清理SCIP编译目录,重新运行CMake生成VS项目;
- 选择“生成解决方案”,确保所有SCIP核心库模块编译完成,再单独编译queens项目。
VS2017兼容性补丁
SCIP 8.0.3对VS2017的依赖需要完整补丁支持,建议将VS2017更新到最新版本,再重新编译测试。
内容的提问来源于stack exchange,提问作者Lin Sen
相关产品推荐
相关产品推荐

