Hello llvm developers!
I am trying to build the OpenMP runtime with clang 9.0.0. The clang compiler fails to find the libstdc++ library.
I specified the pathname, but it does not help.
I had to resort to configuring like this:
cmake -DCMAKE_BUILD_TYPE=Release \
Is there a way to tell clang to use the correct library? It complains that the library is too old, but I think it is because it does not find the right one.
You can set the -DGCC_INSTALL_PREFIX to point to the folder with the desired version of GCC.
The GCC folder you want to point to is the one containing the lib and include folders. I use GCC 6.4.
Thanks a lot,
I have for now installed as below. I will try what you suggested next week!
Hi Doru and all,
I now have an install of clang + OpenMP target-offload using the old toolchain.
The benchmarks build, but when trying to run I get the following error:
pfe25.gjost 89> more sp.A.out.txt
libomptarget fatal error 1: failure of target construct while offloading is mand
I am using a Skylake node with 4 V100 GPUs, using only one of the GPUs. Would you have suggestions on how I can narrow down this issue? Should I rebuild libomp in debug mode?
Thanks in advance and best regards,
Did you set the CUDA_VISIBLE_DEVICES env var?
If not you should set it to: CUDA_VISIBLE_DEVICES=0,1,2,3
Which CUDA version are you using? Any mismatch between the version used to build Clang and the version used to compile/run the program will lead to such errors.
Are you compiling and running your program on the same machine where you built Clang?
When building Clang I see you have:
you should change that to:
for the V100 GPUs.
In addition you should also use this flag to build Clang:
Here you can specify several compute capabilities.
Thanks a lot,