Compiling "vmkit" on Ubuntu_x64 - Error: missing argument to --bindir

To compile vmkit on Ubuntu 12.04 64-bit machine, I followed the steps giving here[1].
but when I run ./configure I am getting following error-

root@komal:/home/komal/Desktop/GSOC/vmkit/vmkit# ./configure -with-llvm-config-path=…/llvm-3.3.src/configure --with-gnu-classpath-glibj=/usr/local/classpath/share/classpath/glibj.zip --with-gnu-classpath-libs=/usr/local/classpath/lib/classpath

checking build system type… x86_64-unknown-linux-gnu

checking host system type… x86_64-unknown-linux-gnu

checking target system type… x86_64-unknown-linux-gnu

checking type of operating system we’re going to host on… Linux

configure: error: missing argument to --bindir

configure: error: Cannot find (or not executable)

I tried searching it online but didn’t got any similar issue.

[1] http://vmkit.llvm.org/get_started.html

Hi Kumar,

There is an error on your configuration line, you should provide the path to llvm-config binary instead of configure file.
Assuming that you compiled llvm in release mode, the llvm-config binary is located in :

     YOUR_PATH_TO_LLVM/Release+Asserts/bin/llvm-config

Try to change the -with-llvm-config-path option and it will compile.

Harris Bakiras

Hi Harris Bakiras,
Thanks for reply. It working now.
Actually I wanted to try vmkit VM to run jruby codes.

vmkit is able to run Java program, but when I try to run JRuby code then I get following error -

root@komal:/home/komal/Desktop/GSOC/programs# jruby hello.rb

Platform.java:39:in `getPackageName’: java.lang.NullPointerException

from ConstantSet.java:84:in `getEnumClass’

from ConstantSet.java:60:in `getConstantSet’

from ConstantResolver.java:181:in `getConstants’

from ConstantResolver.java:102:in `getConstant’

from ConstantResolver.java:146:in `intValue’

from OpenFlags.java:28:in `value’

from RubyFile.java:254:in `createFileClass’

from Ruby.java:1273:in `initCore’

from Ruby.java:1101:in `bootstrap’

from Ruby.java:1079:in `init’

from Ruby.java:179:in `newInstance’

from Main.java:217:in `run’

from Main.java:128:in `run’

from Main.java:97:in `main’

Can you tell me what will be the issue ?
Vmkit doesn’t work with OpenJDK ?

I don't know how JRuby works, maybe it uses some new feature that GNU Classpath does not provide.

VMKit's openJDK version is unstable on 64 bits since package version 6b27.
You can still use it for very small programs which does not need GC but that's all.

It works fine on 32 bits.
So you can try it on 32 bits or revert your java version to a previous one (< than 6b27) to test it on 64 bits.

We are working on fixing the 64 bits issue as soon as possible.

Harris Bakiras

I am working on a project to port JRuby on Embedded systems. JRuby converts Ruby code to bytecode which is executed by any JVM. For this project I am testing performance of JRuby with various available JVMs. I have chosen ARM architecture.
Does vmkit support ARM architecture?

Hello Kumar,

Unfortunately we never experienced on ARM architecture and we are not planning to port VMKit on ARM for the moment.

Regards,

Harris Bakiras

here its mentioned that its portable on ARM. So simply cross-compiling will work?

Hi Kumar,

It’s a mistake, we will correct that, we haven’t tested vmkit on arm. As LLVM supports arm, by cross-compiling vmkit in arm/linux, it could work, but you will probably have to adapt some few parts of the code. If you plan to make the port, feel free to send us a lot of patches :slight_smile:

Gaël

Thanks for your fast responses, this group seams very much active.

. If you plan to make the port, feel free to send us a lot of patches :slight_smile:

If I get time to work on it, I will definitely do that.