Armadillo C++ 库 - C++11 编译器需要错误

Armadillo C++ library - C++11 compiler required error

我在 Xcode 12.4 上使用 MacOS 10.15.7,我想在我的 iOS Swift 项目中使用 Armadillo 库。所以首先我通过 Homebrew 安装了 Armadillo。

Armadillo 安装在路径 /usr/local/Cellar/armadillo/

我在路径 /usr/local/Cellar/armadillo/10.5.1/include 中找到了 header 个文件,在路径 /usr/local/Cellar/armadillo/10.5.1/lib

中找到了库文件

在 Xcode 项目中,构建设置 我在 Header 搜索路径和库搜索路径中提供了上述路径。

我遇到了三个错误。

不确定如何进行。有什么建议吗???

您将无法轻松做到这一点。 Swift 尚不支持 C++ 互操作,但这是一个长期目标。您可以在 C++ Interop Manifesto in the Swift git repo. The best you will be able to do right now is write an extern "C" wrapper in C++ around any C++ functions you want to call, and then import your wrapper into Swift. Since you're using an Xcode project, I would recommend trying something like this.

中阅读有关内容

或者,根据您需要犰狳的用途,您或许可以在没有它的情况下离开。如果您只需要做线性代数,如果您正在寻找集成,Apple 会提供 LAPACK(请参阅 here) and BLAS (see here) inside Accelerate, which is available on all Apple platforms without installing anything. This might even be familiar to you because Armadillo does its matrix decompositions through LAPACK. There's also Quadrature (see here)。我对这些都有很好的体验。