[LLVMdev] unable to interface with target machine

Philip Ashmore contact at philipashmore.com
Wed Nov 14 16:58:46 PST 2012


On 14/11/12 22:11, Philip Ashmore wrote:
 > Hi there.
 >
 > Sorry in advance if this is a silly question.
 >
 > I've got a test program in my v3c-storyboard project
 > http://sourceforge.net/projects/v3c-storyboard/
 > that generates LLVM assembly for a hello world program.
 >
 > If I try
 >
 >    clang -o hello-world hello-world.ll
 >
 > I get "error: unable to interface with target machine".
 >
 > But if I
 >
 >    llvm-as -o hello-world.bc hello-world.ll && "
 >    "llc -o hello-world.S hello-world.bc && "
 >    "gcc -o hello-world hello-world.S"
 >
 > it works.
 >
 > What am I missing?
 >
 > Regards,
 > Philip Ashmore
 > _______________________________________________
 > LLVM Developers mailing list
 > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
 > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

I tested it with llvm 3.2svn but I've got to change v3c-storyboard's 
configure
script to look for llvm-config-3.x instead of llvm-config for the llvm 3.1
Debian package.

It doesn't work with llvm 3.0.

Here's the generated file.

; ModuleID = 'my cool jit'

@0 = private unnamed_addr constant [14 x i8] c"Hello, world!\00"

declare i32 @puts(i8*)

define i32 @main(i32, [0 x i8*]) {
entry:
   %2 = call i32 @puts(i8* getelementptr inbounds ([14 x i8]* @0, i32 0, 
i32 0))
   ret i32 0
}




More information about the llvm-dev mailing list