【发布时间】:2016-04-21 23:16:08
【问题描述】:
我正在编写一个必须读取二进制 .MAT 文件的 C++ 应用程序。所以我需要使用 libmat 和 libmex 来做到这一点(注意我没有使用 MEX 文件)。我还尝试使用 boost::program_options 来处理解析命令行参数,因为这是一个非 GUI 应用程序。我正在使用 CMake 来处理我的构建环境。
我们正在使用的 boost 版本是 1.59。但是,当我尝试链接 program_options 时,CMake 会在 MATLAB 库中找到 boost::program_options 库,而 MATLAB 库需要 boost 1.49。然后,当我尝试运行已编译的应用程序时,它会因为使用 1.59 的头文件而崩溃,但使用 MATLAB 的 1.49 副本中的库。有没有人知道如何使用这两个版本的 boost,因为 MATLAB 不适用于 1.59 并且 MATLAB 不包含 1.49 的包含文件。
【问题讨论】: