【发布时间】:2021-09-05 13:30:52
【问题描述】:
我试图通过使用 NVIDIA 的 C++ 标准库的 version 在 CUDA 中使用共享指针。所以试图包括<cuda/std/detail/libcxx/include/memory>。我有一些错误。其中之一包括cannot open source file、<__config> 和<__functional_base>。这些文件显然在目录中。就像视觉工作室的行为就像那些文件不存在一样,即使它们存在。我得到的另一个错误是linkage specification is incompatible with previous "" 和<cmath>。
我很少挖掘。我发现cannot open source file 在cuda/std/detail/libcxx/include/ 中以_ 开头的每个非头文件都很明显。就像 Visual Studio 以某种方式表现得好像那些文件不存在,尽管它们清楚地位于附加的包含目录中。此外,当我键入cuda/std/detail/libcxx/include/ 时,IntelliSense 将找不到这些文件。如果我能让 Visual Studio 识别这些文件,我就可以在 NVIDIA 版本的标准库中正确包含任何文件。
【问题讨论】:
-
Cuda 有自己的标准库版本。它被称为 libcu++。我什至指向了标准库中这些文件的目录,
cuda/std/detail/libcxx/include/。
标签: c++ visual-studio cuda visual-studio-2019 c++-standard-library