[LLVMdev] [Cygwin] 'make tools-only' configuration error

Reid Spencer reid at x10sys.com
Wed Jun 1 16:37:30 PDT 2005


X86 Linux compiles/links/runs just fine.

X86JITInfo is an object file that should be part of LLVMX86.o. To
validate that it is there do this:

cd <builddir>/lib/Target/X86/Debug
ls -l X86JITInfo.*

The two files (*.o and *.d) should have non zero size. Then do this:

nm X86JITInfo.o

and make a note of a few external symbols (with T attribute). Then
run nm on LLVMX86.o in the <builddir>/Debug/lib directory and see if you
can see that symbol (might want to pipe through grep for that). If the
symbol shows up then X86JITInfo.o was linked into LLVMX86.o

The LLVM Makefile system is pretty simple (to use). Its fully documented
here: http://llvm.cs.uiuc.edu/docs/MakefileGuide.html 

Reid


On Wed, 2005-06-01 at 23:26 +0100, Aaron Gray wrote:
> 'collect2.exe' is an internal version of 'ld' called by GCC
>  
> The GCC command line is :-
>  
> g++ -I/usr/build/llvm-2/tools/llc -I/usr/src/llvm/tools/llc -
> I/usr/build/llvm-2/
> include -I/usr/src/llvm/include -I/usr/build/llvm-2/include -
> I/usr/src/llvm/incl
> ude -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -Wall -W -Wwrite-strings -Wno-
> unused -g
> -D_DEBUG -v -
> o /usr/build/llvm-2/Debug/bin/llc.exe /usr/build/llvm-2/tools/llc/D
> ebug/llc.o /usr/build/llvm-2/Debug/lib/LLVMCBackend.o /usr/build/llvm-2/Debug/li
> b/LLVMSparcV9ModuloSched.o /usr/build/llvm-2/Debug/lib/LLVMSparcV8.o /usr/build/
> llvm-2/Debug/lib/LLVMSparcV9.o /usr/build/llvm-2/Debug/lib/LLVMSparcV9RegAlloc.o
>  /usr/build/llvm-2/Debug/lib/LLVMSparcV9InstrSched.o /usr/build/llvm-2/Debug/lib
> /LLVMSparcV9LiveVar.o /usr/build/llvm-2/Debug/lib/LLVMX86.o /usr/build/llvm-2/De
> bug/lib/LLVMPowerPC.o /usr/build/llvm-2/Debug/lib/LLVMAlpha.o /usr/build/llvm-2/
> Debug/lib/LLVMIA64.o /usr/build/llvm-2/Debug/lib/LLVMSelectionDAG.o /usr/build/l
> lvm-2/Debug/lib/LLVMCodeGen.o /usr/build/llvm-2/Debug/lib/LLVMScalarOpts.o /usr/
> build/llvm-2/Debug/lib/LLVMBCReader.o /usr/build/llvm-2/Debug/lib/LLVMBCWriter.o
>  /usr/build/llvm-2/Debug/lib/LLVMCore.o /usr/build/llvm-2/Debug/lib/LLVMbzip2.o
> -Wl,--export-dynamic  -L/usr/build/llvm-2/Debug/lib -lLLVMTarget -
> lLLVMipa -lLLV
> MTransforms -lLLVMAnalysis -lLLVMTransformUtils -lLLVMSupport -
> lLLVMSystem -L/us
> r/build/llvm-2/Debug/bin
>  
> It looks like there is a reference to X86JITInfo but no object file
> for this is being linked into 'llc'.
>  
> Does the X86 Linux version compile correctly ?
>  
> I am a bit dumb founded by LLVM's make system still otherwise I would
> probably have fixed this by now.
>  
> Aaron
>  
>         ----- Original Message ----- 
>         From: Aaron Gray 
>         To: LLVM Developers Mailing List ; Reid Spencer 
>         Sent: Wednesday, June 01, 2005 6:40 PM
>         Subject: Re: [LLVMdev] [Cygwin] 'make tools-only'
>         configuration error
>         
>         
>         Reid,
>          
>         Getting the same error again :-(
>          
>          /usr/gcc/gcc-3.4.3/libexec/gcc/i686-pc-
>         cygwin/3.4.3/collect2.exe -Bdynamic --dl
>         l-search-prefix=cyg -
>         o /usr/build/llvm-2/Debug/bin/llc.exe /lib/crt0.o -L/usr/bu
>         ild/llvm-2/Debug/lib -L/usr/build/llvm-2/Debug/bin -
>         L/usr/gcc/gcc-3.4.3/lib/gcc/
>         i686-pc-cygwin/3.4.3 -L/usr/gcc/gcc-3.4.3/lib/gcc/i686-pc-
>         cygwin/3.4.3/../../..
>         /usr/build/llvm-2/tools/llc/Debug/llc.o /usr/build/llvm-2/Debug/lib/LLVMCBackend
>         .o /usr/build/llvm-2/Debug/lib/LLVMSparcV9ModuloSched.o /usr/build/llvm-2/Debug/
>         lib/LLVMSparcV8.o /usr/build/llvm-2/Debug/lib/LLVMSparcV9.o /usr/build/llvm-2/De
>         bug/lib/LLVMSparcV9RegAlloc.o /usr/build/llvm-2/Debug/lib/LLVMSparcV9InstrSched.
>         o /usr/build/llvm-2/Debug/lib/LLVMSparcV9LiveVar.o /usr/build/llvm-2/Debug/lib/L
>         LVMX86.o /usr/build/llvm-2/Debug/lib/LLVMPowerPC.o /usr/build/llvm-2/Debug/lib/L
>         LVMAlpha.o /usr/build/llvm-2/Debug/lib/LLVMIA64.o /usr/build/llvm-2/Debug/lib/LL
>         VMSelectionDAG.o /usr/build/llvm-2/Debug/lib/LLVMCodeGen.o /usr/build/llvm-2/Deb
>         ug/lib/LLVMScalarOpts.o /usr/build/llvm-2/Debug/lib/LLVMBCReader.o /usr/build/ll
>         vm-2/Debug/lib/LLVMBCWriter.o /usr/build/llvm-2/Debug/lib/LLVMCore.o /usr/build/
>         llvm-2/Debug/lib/LLVMbzip2.o --export-dynamic -lLLVMTarget -
>         lLLVMipa -lLLVMTrans
>         forms -lLLVMAnalysis -lLLVMTransformUtils -lLLVMSupport -
>         lLLVMSystem -lstdc++ -l
>         gcc -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc
>         /usr/build/llvm-2/Debug/lib/LLVMX86.o(.text+0x30406): In
>         function `_GLOBAL__D__Z
>         N76_GLOBAL__N__usr_src_llvm_lib_Target_X86_X86ISelPattern.cpp_9D2164D3_A63131251
>         7X86TargetLowering14LowerArgumentsERN4llvm8FunctionERNS1_12SelectionDAGE':
>         /usr/src/llvm/lib/Target/X86/X86ISelPattern.cpp:73: undefined
>         reference to `X86C
>         ompilationCallback2'
>         /usr/build/llvm-2/Debug/lib/LLVMX86.o(.text
>         +0x304f2):/usr/src/llvm/lib/Target/X8
>         6/X86ISelPattern.cpp:73: undefined reference to
>         `_X86CompilationCallback'
>         /usr/build/llvm-2/Debug/lib/LLVMX86.o(.text
>         +0x30501):/usr/src/llvm/lib/Target/X8
>         6/X86ISelPattern.cpp:73: undefined reference to
>         `_X86CompilationCallback'
>         collect2: ld returned 1 exit status
>         make[2]: *** [/usr/build/llvm-2/Debug/bin/llc.exe] Error 1
>         make[2]: Leaving directory `/usr/build/llvm-2/tools/llc'
>         make[1]: *** [llc/.makeall] Error 2
>         make[1]: Leaving directory `/usr/build/llvm-2/tools'
>         make: *** [all] Error 1
>          
>         This error seems to be common to both the old Cygwin
>         configuration which we originally had working and the
>         newer configuration as well.
>          
>         Any clues ?
>          
>         Aaron
>          
>         
>         
>         ______________________________________________________________
>         
>         _______________________________________________
>         LLVM Developers mailing list
>         LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>         http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050601/30fe7106/attachment.sig>


More information about the llvm-dev mailing list