[LLVMdev] A bunch of errors while installing VMKit and compiling LLVM
Vozniuk, Sergii
sergii.vozniuk at epfl.ch
Tue Oct 25 04:15:50 PDT 2011
Hi everyone
I wasn't successful in running VMKit on my machine and I'm still struggling
with doing it.
Maybe someone had at least one of my problems and knows how to solve it
(because it seems to me that I ran into every problem that could occur :) ).
Thanks in advance,
Sergii.
So here is the story:
I have a fresh installation of Ubuntu 11.04 64bit with all important
updates.
I'll tell in advance that I was careful in trying to compile LLVM and VMKit
(i.e. I had only one version of llvm-gcc and/or clang installed at a
time, I always ran "make clean" before "make" etc.)
To build VMKit we have first to checkout and build LLVM. The VMKit "Getting
started"
guide states: Make sure you have llvm-gcc or clang available when you
configure LLVM.
Alternatively, you can also checkout clang in llvm-scr/tools.
The following steps are not done in sequence, they are alternatives
1. Install llvm-gcc from Ubuntu repository. In this case the LLVM
configuration
script doesn't see the gcc compiler although it's installed
~/llvm/llvm-build$ sudo apt-get install llvm-gcc-4.5
~/llvm/llvm-build$ ../llvm-src/configure --enable-optimized
checking for clang... no
checking for llvm-gcc... llvm-gcc
checking for C compiler default output file name... configure:
error: C compiler cannot create executables
2. Install older version of llvm-gcc from Ubuntu repository. This
installation
doesn't create llvm-gcc executable but instead creates llvm-gcc-4.2
so I
created a symlink to llvm-gcc-4.2. named llvm-gcc. The LLVM
configuration goes fine
but building LLVM produces an error
~/llvm/llvm-build$ sudo apt-get install llvm-gcc-4.2
~/llvm/llvm-build$ sudo ln -s /usr/bin/llvm-gcc-4.2
/usr/bin/llvm-gcc
~/llvm/llvm-build$ ../llvm-src/configure --enable-optimized
~/llvm/llvm-build$ make
llvm[1]: Compiling Host.cpp for Release+Asserts build
In file included from /usr/include/c++/4.5/cerrno:43:0,
from
/home/svozniuk/llvm/llvm-src/lib/Support/Unix/Unix.h:27,
from
/home/svozniuk/llvm/llvm-src/lib/Support/Unix/Host.inc:21,
from
/home/svozniuk/llvm/llvm-src/lib/Support/Host.cpp:20:
/usr/include/errno.h:69:13: error: multiple types in one
declaration
/usr/include/errno.h:69:13: error: declaration does not declare
anything
/bin/rm: cannot remove
`/home/svozniuk/llvm/llvm-build/lib/Support/Release+Asserts/Host.d.tmp': No
such file or directory
make[1]: ***
[/home/svozniuk/llvm/llvm-build/lib/Support/Release+Asserts/Host.o] Error 1
make[1]: Leaving directory
`/home/svozniuk/llvm/llvm-build/lib/Support'
make: *** [all] Error 1
3. Download llvm-gcc4.2-2.9-x86_64-linux archive from llvm.org, extract
it and manually add to the PATH. The configuration script finishes
successfully
but building LLVM produces an error
~/llvm/llvm-build$ export
PATH=$PATH:/home/svozniuk/llvm/llvm-gcc4.2-2.9-x86_64-linux/bin/
~/llvm/llvm-build$ ../llvm-src/configure --enable-optimized
~/llvm/llvm-build$ make
llvm[1]: Compiling CommandLine.cpp for Release+Asserts build
In file included from
/home/svozniuk/llvm/llvm-src/lib/Support/CommandLine.cpp:25:
/home/svozniuk/llvm/llvm-src/include/llvm/Support/system_error.h:499: error:
‘EAFNOSUPPORT’ was not declared in this scope
/home/svozniuk/llvm/llvm-src/include/llvm/Support/system_error.h:500: error:
‘EADDRINUSE’ was not declared in this scope
.........And another 50 errors of the same type follow.........
4. Install clang from Ubuntu repository (All ways (which I know of) to
build LLVM with
llvm-gcc available have failed so now I switch to building LLVM with
clang available).
The configuration finishes successfully but again I get an error
trying to build LLVM
~/llvm/llvm-build$ sudo apt-get install clang
~/llvm/llvm-build$ ../llvm-src/configure --enable-optimized
~/llvm/llvm-build$ make
llvm[1]: Compiling APFloat.cpp for Release+Asserts build
In file included from
/home/svozniuk/llvm/llvm-src/lib/Support/APFloat.cpp:15:
In file included from
/home/svozniuk/llvm/llvm-src/include/llvm/ADT/APFloat.h:104:
In file included from
/home/svozniuk/llvm/llvm-src/include/llvm/ADT/APInt.h:18:
In file included from
/home/svozniuk/llvm/llvm-src/include/llvm/ADT/ArrayRef.h:13:
In file included from
/home/svozniuk/llvm/llvm-src/include/llvm/ADT/SmallVector.h:17:
/home/svozniuk/llvm/llvm-src/include/llvm/Support/type_traits.h:20:10: fatal
error: 'utility' file not found
#include <utility>
^
1 error generated.
make[1]: ***
[/home/svozniuk/llvm/llvm-build/lib/Support/Release+Asserts/APFloat.o] Error
1
5. Checkout clang to llvm-src-clang/tools and build LLVM this way. LLVM
Configuration script finishes
with no errors. LLVM builds successfully. VMKit configuration script
finishes with no errors.
Building VMKit produces an error (segmentation fault)
~/llvm/llvm-build-clang$ ../llvm-src-clang/configure
--enable-optimized
~/llvm/llvm-build-clang$ make
~/llvm/vmkit$ ./configure
--with-llvmsrc="/home/svozniuk/llvm/llvm-src-clang"
--with-llvmobj="/home/svozniuk/llvm/llvm-build-clang"
--with-gnu-classpath-glibj="/home/svozniuk/llvm/classpath-0.97.2"
--with-gnu-classpath-libs="/home/svozniuk/llvm/classpath-0.97.2/lib"
--with-mmtk-plan=org.mmtk.plan.copyms.CopyMS
~/llvm/vmkit$ make
llvm[2]: Building Release+Asserts Bytecode Module MMTKAlloc.bc
make[2]: Leaving directory
`/home/svozniuk/llvm/vmkit/mmtk/mmtk-alloc'
make[2]: Entering directory
`/home/svozniuk/llvm/vmkit/mmtk/java'
make[2]: buildfile: Command not found
make[2]: [all] Error 127 (ignored)
llvm[2]: Building Release+Asserts mmtk-vmkit.jar all
Can't find zip file.
0 opt 0x000000000093449f
1 opt 0x0000000000934fda
2 libpthread.so.0 0x00002b867fa26c60
3 MMTKMagic.so 0x00002b8680977769
4 opt 0x00000000008d0177
llvm::MPPassManager::runOnModule(llvm::Module&) + 535
5 opt 0x00000000008d02db
llvm::PassManagerImpl::run(llvm::Module&) + 187
6 opt 0x00000000004c4c9f main + 5791
7 libc.so.6 0x00002b86805faeff __libc_start_main + 255
8 opt 0x00000000004b4569
Stack dump:
0. Program arguments:
/home/svozniuk/llvm/llvm-build-clang/Release+Asserts/bin/opt
-load=/home/svozniuk/llvm/vmkit/Release+Asserts/lib/MMTKMagic.so
-std-compile-opts -LowerJavaRT -f mmtk-vmkit.bc -o mmtk-vmkit-optimized.bc
1. Running pass 'Remove references to RT' on module
'mmtk-vmkit.bc'.
make[2]: *** [all] Segmentation fault
make[2]: Leaving directory `/home/svozniuk/llvm/vmkit/mmtk/java'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/svozniuk/llvm/vmkit/mmtk'
make: *** [all] Error 1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111025/83a16c2d/attachment.html>
More information about the llvm-dev
mailing list