0

我正在尝试在 XCode 中构建一个同时使用 Cinder 和 OpenSubdiv 的项目。

它们在很多方面发生冲突,我已经解决了大多数问题,但最后一个让我头疼。

我有一个链接器错误:

“架构 x86_64 的未定义符号:“std::__throw_length_error(char const*)”,引用自:blah blah

经过一番研究,我发现我应该将“C++ 标准库”从 libc++ 更改为 libstdc++。

但是,Cinder 抱怨并告诉我它需要libc++。所以我被困住了。

我设法让 Cinder 和 OpenSubdiv 在 windows 上一起工作,但在 mac 上真的很难。有没有可能解决这个问题的方法?

4

1 回答 1

1

第一个选择是找出谁在请求std::__throw_length_error(char const*),然后更改该代码以使用 libc++ 而不是 libstdc++。

如果由于某种原因无法完成,您可以尝试通过将 /usr/lib/libstdc++.dylib 添加到其他链接器标志设置来链接到 libc++ 和 libstd++(在“C++ 标准库”中保留您选择的 libc++)。

于 2013-09-05T23:26:16.650 回答