[Soot-list] Problems running Paddle

Hamid A. Toussi hamid2c at gmail.com
Thu Nov 10 13:42:12 EST 2011


> Hi,
>
> i'm trying to run paddle on my x64-machine and have problems to work
> with the bdd-implementations.
>
> I've compiled jedd and all dependencies on my x64-machine by-hand - with
> success - and got an brand new 64bit-jedd-runtime.
>
> After that, i included the runtime as explained in the survivorsguide
> with -Djava.library.path=/home/<user>/jedd-0.4/runtime/lib/: also with
> success.
>
> Then i've tried the three bdd-implementations (buddy, cudd and javabdd)
> by setting the corresponding backend option (rest: same option-set as in
> the survivorsguide-example) with three fails (see below).
>
> Anyone any ideas?
>
> Thanks in advance.
>
> Tillmann
>
> BUDDY:
>
> Exception in thread "main" java.lang.UnsatisfiedLinkError:
> jedd.internal.buddy.BuddyJNI.get_bddop_and()I
>     at jedd.internal.buddy.BuddyJNI.get_bddop_and(Native Method)
>     at jedd.internal.buddy.Buddy.<clinit>(Buddy.java:634)
>     at jedd.internal.BuddyBackend.init(BuddyBackend.java:39)
>     at jedd.internal.Backend.init(Backend.java:35)
>     at jedd.internal.Jedd.setBackend(Jedd.java:37)
>     at jedd.Jedd.setBackend(Jedd.java:78)
>     at soot.jimple.paddle.PaddleScene.setupJedd(PaddleScene.java:83)
>     at soot.jimple.paddle.PaddleScene.setup(PaddleScene.java:1272)
>

I have done this some time ago, I think you can make your buddy
library and the required java wrappers as follows:

Generate wrappers using swig:
swig -I<directory_containing_c_header_files> -c++ -java -package
jbuddy -outdir<java-output-dir> jbuddy.i

Build the native library (Note that jbuddy_wrapy should be already
generated by swig):
cfiles="bddio.c bddop.c bvec.c cache.c fdd.c imatrix.c kernel.c \
       pairs.c prime.c reorder.c tree.c util.c"

cppfiles="cppext.cxx  interface/jbuddy_wrap.cxx"

gcc -c -fPIC -Wall -g3 $cfiles  -I./
-I/home/hamid/ibm-java-x86_64-60/include
-I/home/hamid/ibm-java-x86_64-60/include/linux


g++ -c -fPIC -Wall -g3 $cppfiles -I./
-I/home/hamid/ibm-java-x86_64-60/include
-I/home/hamid/ibm-java-x86_64-60/include/linux


objs="bddio.o bddop.o bvec.o cache.o fdd.o imatrix.o kernel.o \
       pairs.o prime.o reorder.o tree.o jbuddy_wrap.o cppext.o"

g++ -shared $objs -o libjbuddy.so

> CUDD:
>
> Exception in thread "main" java.lang.UnsatisfiedLinkError:
> jedd.internal.cudd.CuddJNI.get_CUDD_VERSION()Ljava/lang/String;
>     at jedd.internal.cudd.CuddJNI.get_CUDD_VERSION(Native Method)
>     at jedd.internal.cudd.Cudd.<clinit>(Cudd.java:1858)
>     at jedd.internal.CuddBackend.init(CuddBackend.java:36)
>     at jedd.internal.Backend.init(Backend.java:39)
>     at jedd.internal.Backend.init(Backend.java:35)
>     at jedd.internal.Jedd.setBackend(Jedd.java:37)
>     at jedd.Jedd.setBackend(Jedd.java:78)
>     at soot.jimple.paddle.PaddleScene.setupJedd(PaddleScene.java:86)
>     at soot.jimple.paddle.PaddleScene.setup(PaddleScene.java:1272)
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>



-- 
Hamid A. Toussi
http://hamid2c.github.com/


More information about the Soot-list mailing list