[LLVMdev] Build errors for vmkit

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sun Oct 18 14:11:13 PDT 2009


Dear Michael,

The symbols that are said undefined by the compiler live in  
libAllocator.a. That file should be in Release/lib/, do you have it?  
It is possible that the compiler has linking order problems. What is  
the version of your gcc?

You can try changing the link order of the make command by editing  
tools/vmkit/Makefile.

Also, you should know that the GC of vmkit does not work on a 64bit  
system, so if you need the GC, you should try to emulate a 32bit system.

Let me know how that worked for you.

Nicolas


Quoting Michael Wu <mmwu at princeton.edu>:

> Hi,
>
>     I can't seem to get VMKit to compile correctly. I'm on a 64 bit
> Jaunty system. I compiled llvm and llvm-gcc from the subversion source
> no problem, but when I try to compile VMKit I get some issue with
> GCAllocator:
>
> /home/mmwu/Download/llvm$ ./configure
> /home/mmwu/Download/llvm$ make ENABLE_OPTIMIZED=1
> /home/mmwu/Download/llvm$ make ENABLE_OPTIMIZED=1 install
>
> ...
>
> /home/mmwu/Download/$ sudo apt-get install classpath
>
> ...
>
> /home/mmwu/Download/vmkit$ ./configure
> --with-llvmsrc=/home/mmwu/Download/llvm
> --with-llvmobj=/home/mmwu/Download/llvm
> --with-gnu-classpath-glibj=/usr/share/classpath/glibj.zip
> --with-gnu-classpath-libs=/usr/lib/classpath
> /home/mmwu/Download/vmkit$ make ENABLE_OPTIMIZED=1
>
> make[2]: Entering directory `/home/mmwu/Download/vmkit/tools/vmkit'
> llvm[2]: Linking Release executable vmkit (without symbols)
> /home/mmwu/Download/vmkit/Release/lib/libGCMmap2.a(gcinit.o): In
> function `mvm::Collector::destroy()':
> gcinit.cpp:(.text+0x34): undefined reference to
> `GCAllocator::~GCAllocator()'
> gcinit.cpp:(.text+0x3c): undefined reference to `GCAllocator::operator
> delete(void*)'
> /home/mmwu/Download/vmkit/Release/lib/libGCMmap2.a(gcinit.o): In
> function `mvm::Collector::initialise()':
> gcinit.cpp:(.text+0x216): undefined reference to `GCAllocator::operator
> new(unsigned long)'
> gcinit.cpp:(.text+0x221): undefined reference to
> `GCAllocator::GCAllocator()'
> gcinit.cpp:(.text+0x2d5): undefined reference to `GCAllocator::operator
> delete(void*)'
> collect2: ld returned 1 exit status
> make[2]: *** [/home/mmwu/Download/vmkit/Release/bin/vmkit] Error 1
> make[2]: Leaving directory `/home/mmwu/Download/vmkit/tools/vmkit'
> make[1]: *** [vmkit/.makeall] Error 2
> make[1]: Leaving directory `/home/mmwu/Download/vmkit/tools'
> make: *** [all] Error 1
>
> I would really appreciate any help I could get.
>
> Thanks,
> Michael
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>







More information about the llvm-dev mailing list