我已经成功地在 Mac OS 上安装了 MathGL,并设法让mglGraph
我生成示例图。然而,当我尝试使用mglData
它来处理我的数据时,它会因“EXC_BAD_ACCESS”错误而崩溃。为什么?有什么我没有做的事情需要做吗?
我用 cmake、make 和 make install 安装了 mathgl(为了安全起见,使用 sudo)。然后我将/usr/local/include和/usr/local/lib路径添加到项目中,并将libmgl.dylib和libmgl-wnd.dylib引用添加到项目中。有什么我错过了吗?我找不到其他人有错误(好吧,我发现了许多错误的访问错误,但没有一个是由 mglData 引起的)。一旦我试图构造一个 mglData 实例,错误就会弹出,所以其中任何一个都会触发异常:
mglData *data = new mglData();
mglData data;
etc...
编辑
所以,这是我编译但崩溃的代码的基本内容:
#include iostream
#include mgl2/mgl.h
int main(int argc, const char * argv[])
{
mglData y;
return 0;
}
线程崩溃时的调用栈是:
所有变量的值是这样的:
半解决 得到它运行
在能够使用 g++ 编译我的项目后,我尝试更改构建设置,谁会相信它,我设法让它运行!我所做的只是将C++ 标准库更改为libstdc++ (GNU C++ standard library)
. 现在我没有使用默认值,即使用libc++ (LLVM C++ standard library with C++ 11 support)
. 目前这似乎也适用于我的 Cocoa 应用程序,但我不知道多久:P(当使用更多 NS* 类时,我担心 LLVM 可能是必要的?)
我仍然对如何解决此问题(无需更改构建设置)或是否不能解决非常感兴趣。