我正在尝试CUDA
在我的机器上安装支持 Trilinos 13.0.1,使用clang
. 为此,我使用CMake
3.18.4 和make
. 在这里,编译已经在 Kokkos-core 链接期间终止,并带有以下错误语句(它们出现得更频繁,我暂时保持简短)
< Lots of output for building object files >
[ 2%] Linking CXX shared library libkokkoscore.so
clang: warning: Unknown CUDA version. No version found in version.txt or cuda.h. Assuming the latest supported version 10.1 [-Wunknown-cuda-version]
CMakeFiles/kokkoscore.dir/impl/Kokkos_CPUDiscovery.cpp.o:1:1: error: expected unqualified-id
<U+007F>ELF<U+0002><U+0001><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0001><U+0000>><U+0000><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><B0><U+0006><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+000B><U+0000><U+0001><U+0000>S<BF>T<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<89>ÿS<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000><85><C0><B9><FF><FF><FF><FF><89><D8><U+000F>N<C1><85><DB><U+000F>N<C1>[<C3><U+000F><U+001F>D<U+0000><U+0000>SH<8D>=<U+0000><U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<85><C0>tGH<89><C7>1<F6><BA>
CMakeFiles/kokkoscore.dir/impl/Kokkos_CPUDiscovery.cpp.o:1:8: warning: null character ignored [-Wnull-character]
<U+007F>ELF<U+0002><U+0001><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0001><U+0000>><U+0000><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><B0><U+0006><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+000B><U+0000><U+0001><U+0000>S<BF>T<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<89>ÿS<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000><85><C0><B9><FF><FF><FF><FF><89><D8><U+000F>N<C1><85><DB><U+000F>N<C1>[<C3><U+000F><U+001F>D<U+0000><U+0000>SH<8D>=<U+0000><U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<85><C0>tGH<89><C7>1<F6><BA>
CMakeFiles/kokkoscore.dir/impl/Kokkos_CPUDiscovery.cpp.o:1:41: error: source file is not valid UTF-8
<U+007F>ELF<U+0002><U+0001><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0001><U+0000>><U+0000><U+0001><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><B0><U+0006><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+0000><U+0000><U+0000><U+0000>@<U+0000><U+000B><U+0000><U+0001><U+0000>S<BF>T<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<89>ÿS<U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000><85><C0><B9><FF><FF><FF><FF><89><D8><U+000F>N<C1><85><DB><U+000F>N<C1>[<C3><U+000F><U+001F>D<U+0000><U+0000>SH<8D>=<U+0000><U+0000><U+0000><U+0000><E8><U+0000><U+0000><U+0000><U+0000>H<85><C0>tGH<89><C7>1<F6><BA>
< Repeating similar output for different lines of the same file >
我的最小示例configure
如下所示,INSTALL_DIR
预先提供:
mkdir build
cd build
cmake .. \
-DCMAKE_C_COMPILER=/usr/bin/clang \
-DCMAKE_CXX_COMPILER=/usr/bin/clang++ \
-DTrilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON \
-DBUILD_SHARED_LIBS:BOOL=ON \
-DCMAKE_BUILD_TYPE=RELEASE \
-DTrilinos_ENABLE_CXX11=ON \
-DTPL_ENABLE_MPI=ON \
-DTPL_ENABLE_gtest=OFF \
-DTPL_ENABLE_CUDA=ON \
-DTrilinos_ENABLE_Gtest=OFF \
-DTrilinos_ENABLE_Tpetra=ON \
-DTrilinos_ENABLE_Xpetra=ON \
-DTrilinos_ENABLE_OpenMP=ON \
-DTrilinos_ENABLE_Belos=ON \
-DTrilinos_ENABLE_Kokkos=ON \
-DKokkos_ARCH_AMDAVX=ON \
-DKokkos_ARCH_PASCAL60=ON \
-DKokkos_ENABLE_CUDA_UVM=ON \
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}"
随后,make install
被调用。
这里有一些关于我的系统的额外细节:
- AMD 锐龙 Threadripper 2950X
- 英伟达 Quadro P1000
- Debian 11(靶心)
- 铿锵声11.0.1-2
使用相同的configure
脚本编译,只是-DTPL_ENABLE_CUDA=OFF
完成没有问题。所以在我看来,我有一些与我的 GPU 的架构规范相关的问题,或者我在使用clang
.
有没有人遇到过类似的问题或知道我做错了什么?