-
Sorry, if this is the wrong place to ask such a question. How can I enable OpenMP support using the SYCL Intel llvm branch? #include <iostream>
int main() {
#pragma omp parallel for
for (int i = 0; i < 10; ++i) {
std::cout << "Round: " << i << std::endl;
}
return 0;
} using /usr/bin/ld: cannot find -lomp
clang-13: error: linker command failed with exit code 1 (use -v to see invocation) (Full error message when using clang version 13.0.0 (https://github.com/intel/llvm.git ad46b641972b90da748768678daa7fae4dcc1b78)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/u75527/Programs/intel-llvm/build/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Candidate multilib: .;@m64
Selected multilib: .;@m64
"/home/u75527/Programs/intel-llvm/build/bin/clang-13" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -main-file-name main.cpp -mrelocation-model static -mframe-pointer=all -fmath-errno -fno-rounding-math -mconstructor-aliases -munwind-tables -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -v -fcoverage-compilation-dir=/home/u75527/Programs/hipsycl/build -resource-dir /home/u75527/Programs/intel-llvm/build/lib/clang/13.0.0 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/backward -internal-isystem /home/u75527/Programs/intel-llvm/build/lib/clang/13.0.0/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/9/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -fdebug-compilation-dir=/home/u75527/Programs/hipsycl/build -ferror-limit 19 -fopenmp -fopenmp-cuda-parallel-target-regions -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/main-e11f36.o -x c++ main.cpp
clang -cc1 version 13.0.0 based upon LLVM 13.0.0git default target x86_64-unknown-linux-gnu
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/9/../../../../x86_64-linux-gnu/include"
ignoring nonexistent directory "/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9
/usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9
/usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/backward
/home/u75527/Programs/intel-llvm/build/lib/clang/13.0.0/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
"/usr/bin/ld" -z relro --hash-style=gnu --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out /lib/x86_64-linux-gnu/crt1.o /lib/x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/9/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib64 -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib64 -L/home/u75527/Programs/intel-llvm/build/bin/../lib -L/lib -L/usr/lib /tmp/main-e11f36.o -lstdc++ -lm -lomp -lgcc_s -lgcc -lpthread -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/9/crtend.o /lib/x86_64-linux-gnu/crtn.o
/usr/bin/ld: cannot find -lomp
clang-13: error: linker command failed with exit code 1 (use -v to see invocation) ) I've build the current sycl branch on the Intel devcloud using: python3 ~/Programs/intel-llvm/buildbot/configure.py
python3 ~/Programs/intel-llvm/buildbot/compile.py as given here: https://intel.github.io/llvm-docs/GetStartedGuide.html#build-dpc-toolchain I also tried to steps described in https://openmp.llvm.org/ to enable OpenMP support. What is the easiest way to enable OpenMP support alognside SYCL using Intel's llvm fork? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
Please try using the following patch: index 28f36c815bcb..7f59aed732d0 100644
--- a/buildbot/configure.py
+++ b/buildbot/configure.py
@@ -22,7 +22,7 @@ def do_configure(args):
xptifw_dir = os.path.join(abs_src_dir, "xptifw")
libdevice_dir = os.path.join(abs_src_dir, "libdevice")
llvm_targets_to_build = 'X86'
- llvm_enable_projects = 'clang;' + llvm_external_projects
+ llvm_enable_projects = 'clang;openmp;' + llvm_external_projects
libclc_targets_to_build = ''
sycl_build_pi_cuda = 'OFF'
sycl_werror = 'ON'
And the following commands:
python $DPCPP_HOME/llvm/buildbot/configure.py
python $DPCPP_HOME/llvm/buildbot/compile.py
cmake --build $DPCPP_HOME/llvm/build -- omp
cmake --build $DPCPP_HOME/llvm/build -- install |
Beta Was this translation helpful? Give feedback.
-
Can you add this to the getting started guide ? |
Beta Was this translation helpful? Give feedback.
Please try using the following patch: