It looks likely that something is wrong with your build of stp. I'd advise doing the following
1. Check that /usr/local/lib/libstp.a exists. This is the STP static library that KLEE will try to link with. 2. Check that the library is built for your architecture (I assume you're using x86_64). Try running $ readelf -h /usr/local/lib/libstp.a This will show you the header file for each of the object files (.o) inside the static library. You should see something like... File: libstp.a(versionString.o) ELF Header: Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 Class: ELF64 Data: 2's complement, little endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: REL (Relocatable file) Machine: Advanced Micro Devices X86-64 .... If you "Class:" or "Machine:" are not as above then you have built stp for the wrong architecture (probably 32-bit instead of 64-bit) and hence linking will fail. The "CFLAGS_M32= " option is important for the old build of STP because it prevents passing the "-m32" option to your compiler. Hope that helps. On 9 October 2012 12:22, Hucheng Zhou <[email protected]> wrote: > Then symptom is: > > heng@osprey:~/klee/klee-build$ ../klee/configure > --with-llvm=/home/hucheng/llvm-2.9/llvm-obj --with-stp=/usr/local > .... > checking stp/c_interface.h usability... yes > checking stp/c_interface.h presence... yes > checking for stp/c_interface.h... yes > checking for vc_setInterfaceFlags in -lstp... no > configure: error: Unable to link with libstp > > Thanks. > > On Tue, Oct 9, 2012 at 7:20 PM, Hucheng Zhou <[email protected]> wrote: >> >> heng@osprey:~/klee/klee-build$ ../klee/configure >> --with-llvm=/home/hucheng/llvm-2.9/llvm-obj --with-stp=/usr/local > > > > > -- > cheers~! > > _______________________________________________ > klee-dev mailing list > [email protected] > http://keeda.Stanford.EDU/mailman/listinfo/klee-dev > _______________________________________________ klee-dev mailing list [email protected] http://keeda.Stanford.EDU/mailman/listinfo/klee-dev
