【发布时间】:2018-12-27 16:26:21
【问题描述】:
最近有人建议我以包管理器的身份查看 conda。不幸的是,我没有成功找到如何让我的编译器找到一个安装了 conda 的仅头文件库?理想情况下,我希望根本不必手动指定编译器的路径。
(上下文是我来自 macOS 上的自制软件,它在正确的位置创建符号链接。显然这是 conda 避免的。但是,编译简单示例的简单方法会很好!)
示例
例如,如果我的代码是下面的代码。 注意:这个问题是通用的,与特定的包无关,我也不想再次手动指定我的特定虚拟环境。
#include <iostream>
#include <xtensor/xarray.hpp>
#include <xtensor/xio.hpp>
int main()
{
xt::xarray<double> a
{{1.0, 2.0, 3.0},
{2.0, 5.0, 7.0},
{2.0, 5.0, 7.0}};
std::cout << a;
}
我已经使用
'安装'了这个库conda create --name example
source activate example
conda install -c conda-forge xtensor-python
现在我只想编译
clang++ -std=c++14 test.cpp
请注意,我知道这是可行的:
clang++ -std=c++14 -I~/miniconda3/envs/example/include test.cpp
但我不认为这是需要的,因为:
- 路径包含环境 (
example)。 - 这取决于系统。
【问题讨论】:
-
如果有系统环境变量设置包含路径,可以在环境激活时设置
-
@darthbith 感谢您的回复。我想一个很大的缺陷是没有这样的环境变量。当然,我可以引入我自己的环境变量,比如
${INCLUDEPATH}。如果我要这样做,我该如何根据虚拟环境进行设置? -
@darthbith 很好,非常感谢。
标签: c++ conda include-path xtensor