Mac OS X 中的未定义引用 _cblas_dgemm

undefined reference _cblas_dgemm in Mac OS X

我已经在 Ubuntu 上安装了 shark 机器学习库,并 link 使用 libshark_debug.soliblapack_atlas.so 对其进行了编辑。 liblapack_atlas.solibatlas-base-dev 包中。现在我想在 Mac OS X 上做同样的事情,但我找不到 liblapack_atlas.so。链接器因以下错误而停止:

undefined symbols for architecture x86_64:
"_cblas_dgemm", reference from:
shark::blas::binding::gemm()

我应该安装哪个包(例如使用 brew)才能 link 我的 C++ 程序 liblapack_atlas.so

OS X 已经为 BLAS 提供了一个 .dylib,在我的系统上它位于 /usr/lib/libblas.dylib 但 YMMV 用于位置。快速检查它的导出符号给了我这个:

nm -gU /usr/lib/libblas.dylib | grep dgemm
...
000000000016e454 T _cblas_dgemm

还提供了一个 liblapack 库,位于:/usr/lib/liblapack.dylib.