Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

Compilation error with LLVM 8.1 (segmentation fault)

STbastien_a_
Beginner
632 Views
I am trying to compile Julia 0.5 (rc2) using the Intel Compiler and MKL libraries, which requires to compile LLVM 3.7+ using ICC, but I am getting a segmentation fault as shown below:
llvm[3]: Building Intrinsics.gen.tmp from Intrinsics.td
0  llvm-tblgen 0x00000001097ba959 _INTERNAL_81__Users_arnaudsj_Github_julia_icc_deps_srccache_llvm_3_8_1_lib_Support_Signals_cpp_e5b9c8f3::PrintStackTraceSignalHandler(void*) + 41
make[3]: *** [/Users/arnaudsj/Github/julia-icc/deps/build/llvm-3.8.1/build_Release/lib/IR/Release/Intrinsics.gen.tmp] Segmentation fault: 11
make[2]: *** [all] Error 1
make[1]: *** [build/llvm-3.8.1/build_Release/Release/lib/libLLVMCodeGen.a] Error 2
I am using the icc version below under OS 10.12 (Beta 6): icc version 17.0.0 Beta (gcc version 4.9.0 compatibility) Please let me know if you have any questions.
0 Kudos
4 Replies
Judith_W_Intel
Employee
632 Views

 

It looks like the problem is occurring during this step:

Building Intrinsics.gen.tmp from Intrinsics.td

I don't know what tool is doing this or what exactly is happening -- our compiler doesn't build files with an extension .td. You probably need to look at the make log and/or the makefile.

If you can show us the actual steps you used we could help further. Ideally this would be the complete set of steps to reproduce the problem.

thanks

Judy

 

0 Kudos
Ehsan_T_Intel
Employee
631 Views

I'm having the same problem with Julia 0.5 and ICC 17.0.0 on OS X 10.11.6. Here are the steps to reproduce it:

wget https://github.com/JuliaLang/julia/releases/download/v0.5.0/julia-0.5.0-full.tar.gz
tar xzf julia-0.5.0-full.tar.gz
cd 
julia-0.5.0
echo -e "USE_INTEL_MKL=1\nUSE_INTEL_MKL_FFT=1\nUSE_INTEL_LIBM=1\nUSEICC=1\nUSEIFC=1\n" > Make.user
# change line 364 of Make.inc to USE_LIBCPP := 0
make

-Ehsan

0 Kudos
Ehsan_T_Intel
Employee
632 Views

I was able to continue the build with ICC 17 by building Support and TableGen components of LLVM with clang. Now curl doesn't like ICC:

checking if compiler halts on function prototype mismatch... no
configure: error: compiler does not halt on function prototype mismatch.

0 Kudos
Melanie_B_Intel
Employee
632 Views

We have an in-house test of llvm 3.8.0 which is builds successfully with both gcc5 and gcc6. I don't know of a problem 3.7 and/or gcc 4.8

This is how we do the configure and build (not sure what disable-bindings is all about)

../llvm-3.8.0/configure --disable-bindings CC=gcc CXX=g++
/usr/bin/make CC=icc CXX=icpc
0 Kudos
Reply