[klee-dev] how to compile busybox-1.4.2 to be a .bc file correctly?
Cristian Cadar
c.cadar at imperial.ac.uk
Fri Mar 8 11:30:09 GMT 2013
Hi Yi,
If you look at vi.c:2091, you'll see that it calls FD_ZERO. This is
defined in sys/select.h ("man FD_ZERO" for details), and the message
says it has unsupported inline asm. You need to replace the
implementation of FD_ZERO with one that does not use inline asm. For
example, you can find one in uclibc, in
libc/sysdeps/linux/i386/bits/select.h).
Best,
Cristian
On 07/03/2013 12:54, Yi Zhou wrote:
> Hi Cristian Cadar:
> Thank you very much for your help!
> I redo the experiments as you said.
> if I use command make CC=klee-gcc LD="llvm-ld --disable-opt"
> AR=llvm-ar SKIP_STRIP=y V=1 to complie the busybox, it will return messages:
>
> /home/guest/installed/busybox/mybusybox/busybox-1.4.2/coreutils/tail.c:83:
> error: nested functions are disabled, use -fnested-functions to re-enable
> so I use command: make CC=klee-gcc LD="llvm-ld --disable-opt"
> AR=llvm-ar SKIP_STRIP=y V=1 CFLAGS=-fnested-functions
> But anther error happened:
> /home/guest/installed/busybox/mybusybox/busybox-1.4.2/editors/vi.c:2091:
> error: unsupported inline asm: input constraint with a matching output
> constraint of incompatible type!
> So what it means? Do you have the same problem when you compile the
> busybox-1.4.2?
> Hope for your direction~~
> Thank you~~
>
> Yi
>
>
> 2013/3/7 Cristian Cadar <c.cadar at imperial.ac.uk
> <mailto:c.cadar at imperial.ac.uk>>
>
> Hi Yi,
>
> We used this sequence:
>
> mkdir obj-klee
> make -w O=obj-klee defconfig
> cd obj-klee
> make CC=klee-gcc LD="llvm-ld --disable-opt" AR=llvm-ar SKIP_STRIP=y V=1
> ln -s busybox_unstripped.bc <toolname> (for each tool you want to run)
>
> You might need to adjust this a bit (I noticed that on my current
> machine I also need CFLAGS=-fnested-functions).
>
> Hope this helps,
> Cristian
>
>
> On 27/02/2013 15:47, Yi Zhou wrote:
>
> Hi everyone:
> I want to test busybox-1.4.2 like coreutils.
> But I get a link error:
> llvm-ld: error: Cannot find linker input
> 'archival/lib.a'
> make: *** [busybox_unstripped] error 1
>
> I use the command:make
> CC=/full/path/to/klee/scripts/__klee-gcc LD=llvm-ld
> or
> make V=1 CC=klee-gcc LD="klee-gcc -Wl,"
> SKIP_STRIP=y CFLAGS=-fnested-functions
> someone can help me ?
> Thank you very much!!
> Yi Zhou
> Institute Of Software
> Chinese Academy of Sciences
>
>
> _________________________________________________
> klee-dev mailing list
> klee-dev at imperial.ac.uk <mailto:klee-dev at imperial.ac.uk>
> https://mailman.ic.ac.uk/__mailman/listinfo/klee-dev
> <https://mailman.ic.ac.uk/mailman/listinfo/klee-dev>
>
>
More information about the klee-dev
mailing list