Failed to create llvm on cygwin

I am currently trying to create llvm 3.3 for Windows through Cygwin.

Compilation is going well, but building failures when linking to this error:

llvm[2]: ======= Finished Linking Release+Asserts Executable llvm-mc (without symbols) make[2]: Leaving directory `/cygdrive/c/Users/Jupotter/Code/llvm-3.3.src/build/tools/llvm-mc' llvm[2]: Compiling ExecutionDriver.cpp for Release+Asserts build /cygdrive/c/Users/Jupotter/Code/llvm-3.3.src/build/Release+Asserts/lib/libLLVMMCJIT.a(SectionMemoryManager.o):SectionMemoryManager.cpp:(.text+0x3b): référence indéfinie vers « __register_frame » /cygdrive/c/Users/Jupotter/Code/llvm-3.3.src/build/Release+Asserts/lib/libLLVMMCJIT.a(SectionMemoryManager.o):SectionMemoryManager.cpp:(.text+0x3b): relocalisation tronquée pour concorder avec la taille: R_X86_64_PC32 vers le symbole indéfini __register_frame /usr/lib/gcc/x86_64-pc-cygwin/4.8.1/../../../../x86_64-pc-cygwin/bin/ld: /cygdrive/c/Users/Jupotter/Code/llvm-3.3.src/build/Release+Asserts/lib/libLLVMMCJIT.a(SectionMemoryManager.o): mauvaise adresse de relocalisation 0x0 dans la section «.pdata» 

In English:

 undefined reference to "__register_frame relocation truncated to concord with size: R_X*^_^$_PC32 to undefined symbol __register_frame wrong relocation address in 0x0 in section ".pdata" 

I create llvm with the following commands:

 $ mkdir build $ cd build $ ../configure LDFLAGS=-Wl,--stack,16777216 --disable-jit --enable-targets=host-only $ make -j4 

The LDFLAGS parameters LDFLAGS taken from the llvm LDFLAGS guide for the win64 platform. I tried disabling jit since it seems to be libLLVMCJIT where there is a problem.

Any idea what might crash this assembly?

+4
source share
1 answer

I met the same error while compiling llvm on Cygwin (x86_64). But I can compile it on Cygwin (x86) successfully.

0
source

Source: https://habr.com/ru/post/1502656/


All Articles