在 C++ Xcode 中链接犰狳库
Posted
技术标签:
【中文标题】在 C++ Xcode 中链接犰狳库【英文标题】:Linking Armadillo Library in C++ Xcode 【发布时间】:2015-03-06 08:16:37 【问题描述】:我是 Mac 和犰狳的新手。以下是我在 Armadillo 中使用 C++ 所做的工作。
已下载并安装 Xcode 下载并安装 Homebrew 在终端输入“brew install armadillo”除此之外,它基本上是 Mac 上的出厂设置。
下载犰狳似乎可以在 brew 中使用,但我不确定下一步该做什么,因为我的代码(如下所示)仍未编译。它仍然说找不到犰狳。
#include<iostream>
#include<armadillo>
using namespace std;
using namespace arma;
int main(int argc, const char * argv[])
mat A;
A << 1 << 2 << endr << 3 << 4 endr;
cout << A << endl;
return 0;
我知道我可能缺少一些简单的东西,但我对这一切都很陌生,所以我很感激建议,谢谢。
【问题讨论】:
你只需要把犰狳路径放到你的项目配置中 【参考方案1】:我使用了默认的 cmake 选项,所以我的 armadillo.h .dylib 结束了 在 /usr/local/include 和 /usr/local/lib 中,恭敬地。
1) 将包含 armadillo.h 和 armadillo.5.20.2.dylib 的路径添加到 Header Search Paths 和 Library Search Paths。
Search Path Screenshot
搜索对话框可用于查找上述项目参数。
2) 添加dylab作为目标依赖
Link Binary With Libraries Screenshot
点击'+' -> 添加其他 -> ⌘ Shift G -> /usr/local
然后选择/usr/local/lib/armadillo.5.20.2.dylib
回想起来,使用备用安装位置运行 cmake 可能会更好,例如:
cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt
在这种情况下,⌘ Shift G
步骤是不必要的,并且可以通过键入 sudo SetFile -a v /opt
从 Finder 中看到 /opt 目录
【讨论】:
【参考方案2】:所以我在四处寻找后发现。 /usr/bin/
被隐藏的事实真的让我很困惑,但我猜你可以从终端那里cd
。然后犰狳在路径/usr/local/Cellar/armadillo/4.600.2/include
,我在Xcode中复制到Search Paths
-> Header Search Paths
。
【讨论】:
您也可以使用 CMake 安装 Armadillo,而不是通过 Homebrew。请参阅官方犰狳.tar.gz package 附带的README.txt
。基于 CMake 的安装会将 Armadillo 标头放入 /usr/include/
。 Xcode默认会搜索这个路径。以上是关于在 C++ Xcode 中链接犰狳库的主要内容,如果未能解决你的问题,请参考以下文章