After I rebuilt stp, the configuration error is gone.

The root-cause is I missed the make option for stp "CFLAGS_M32="

Thanks.

On Wed, Oct 10, 2012 at 9:34 AM, Hucheng Zhou <[email protected]>wrote:

> Thanks for the hints. However, the build libstp.a is 64 bit.
>
> hucheng@osprey:/usr/local/lib$ readelf -h libstp.a
>
> 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
>
>
> Thanks.
>
>
> On Tue, Oct 9, 2012 at 7:52 PM, Delcypher <[email protected]> wrote:
>
>> 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
>> >
>>
>
>
>
> --
> cheers~!
>



-- 
cheers~!
_______________________________________________
klee-dev mailing list
[email protected]
http://keeda.Stanford.EDU/mailman/listinfo/klee-dev

Reply via email to